Inserire immagini in un database

Area dedicata al linguaggio HTML. Nozioni di base,esempi,script,programmazione
Rispondi
Avatar utente
Micogian
Globalmod
Globalmod
Messaggi: 588
Iscritto il: 17/03/2016, 17:53
Link del Forum: https://www.actaplantarum.org

Re: Inserire immagini in un database

Messaggio da Micogian »

Senza provare il codice non è facile, è sbagliato il punto e virgola, ci va una virgola

Codice: Seleziona tutto

$id_cor   	= request_var('id', 1);
Il campo id_calibro dovrebbe essere il 1° posto, è il più importante, Qualsiasi tabella inizia con l'ID
Avatar utente
Micogian
Globalmod
Globalmod
Messaggi: 588
Iscritto il: 17/03/2016, 17:53
Link del Forum: https://www.actaplantarum.org

Re: Inserire immagini in un database

Messaggio da Micogian »

Ma nella tabella si deve vedere 1 solo record, quello selezionato e le variabili sono cambiate, non sono più Bossolo[$i], ecc, ma $Bossolo_cor e così tutti gli altri.
Las lista viene creata dalla prima query, la tabella dalla seconda.
Non chiamare index.php il file, chiamalo come vuoi, munizioni.php, cartuce.php o come vuoi, ma non è un index
Fino a quando non farai il select puoi inserire i valori nell'url

Codice: Seleziona tutto

munizioni.php?cat=2&id=3
Il valore id deve essere compreso nella categoria

Ma dato che il record selezionato è uno solo ilciclo for nopn serve, serve per elaborare la lista.
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 760
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Inserire immagini in un database

Messaggio da eniac »

ho cambiato nome in munizioni.php , per il resto non posso fare altro perche non ho ancora ben capito cosa dovrebbe succedere alla tabella.
al momento sono fermo qui, il codice è esattamente quello che mi hai messo piu sopra, ho solo sistemato il ; le tabelle generate ne sono due....
Cattura.PNG
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 760
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Inserire immagini in un database

Messaggio da eniac »

qualcosa è cambiato, ho sistemato la tabella dove non avevo sostituito i nomi delle variabili :redface: ma ancora non và..
ho eliminato anche il for... adesso viene una sola tabella
Cattura.PNG
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 760
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Inserire immagini in un database

Messaggio da eniac »

Ho trovato un altro errore nel codice...almeno gli errori in alto so sparito quindi credo che sia cosi
Cattura.PNG

quindi ora è cosi
Cattura2.PNG
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
Micogian
Globalmod
Globalmod
Messaggi: 588
Iscritto il: 17/03/2016, 17:53
Link del Forum: https://www.actaplantarum.org

Re: Inserire immagini in un database

Messaggio da Micogian »

Ho cercato di spiegarti fin dall'inizio, si vede che non sono stato chiaro.
La tabella, quella con le immagini e i dati del Calibro è una sola e visualizza un solo record, quello selezionato.
Per selezionare il record ci sono 2 modi, creare un modulo Select dove vengono inseriti tutti gli id_calibro della categoria selezionata in maniera che si posso selezionare quella che vuoi visualizzare. Ma i dati che servono per fare il select sono solo gli id_calibro della categoria selezionata (non abbiamo ancora pensato come selezionare la categoria.)
La seconda opzione sarebbe quella di visualizzare una lista (senza immagini) dei calibri di quella Categoria e dalla tabella selezionare il calobro da visualizzare nella tabella. Dipende dalla scelta che preferisci, se scegli lalista dobbiamo adattare la query per creare la lista.
Dipende da quante Categorie dovresti creare, io farei un altro database "categorie" ci metti 2 campi, id_cat e descrizione, un numero per la categoria e una descrizione della categoria, A questo punto nella tabella munizioni devi mettere il numero della categoria di questa tabella, in modo che possiamo avere l'id_cat e la dewscrizione, senza dover scrivere la descrizione per ogni record.
Il campo id_cat non è necessario che sia automatico,può essere un valore che metti tu,ovviamente non ci devono essere doppioni.
Meglio ancora sarebbe quello di usare 3 campi
id_cat - numerico automatico univoco
cat = numero che identificala Categoria, non ci devononessre 2 record con lo stesso cat
descrizione = la descrizione della Categoria.
poi faremo una query per scegliere la categoria da elaborare,
Avatar utente
Micogian
Globalmod
Globalmod
Messaggi: 588
Iscritto il: 17/03/2016, 17:53
Link del Forum: https://www.actaplantarum.org

Re: Inserire immagini in un database

Messaggio da Micogian »

Le variabili che devi usare nella tabella sono queste e senza il ciclo "for" perchè il record è uno solo

Codice: Seleziona tutto

	$Bossolo_cor 
	$Calibro_cor   
	$Nazione_cor      
	$Produttore_cor    	
	$Anno_cor      		
	$Modello_cor   
	$Fondello_cor   
	$Note_cor   
	$Cartuccia_cor  
La prima query funziona,non funziona la tabella ma credo per levariabili cambiate.
Avatar utente
eniac
PhpBB Expert
PhpBB Expert
Messaggi: 760
Iscritto il: 18/07/2013, 19:14
Link del Forum: Http://www.cesimmunizioni.eu/forum
Località: Abruzzo
Contatta:

Re: Inserire immagini in un database

Messaggio da eniac »

eniac ha scritto: 18/12/2020, 22:35 qualcosa è cambiato, ho sistemato la tabella dove non avevo sostituito i nomi delle variabili :redface: ma ancora non và..
ho eliminato anche il for... adesso viene una sola tabella

Cattura.PNG
..e questo lo avevo fatto , infatti ora disegna una sola tabella ma con i relativi errori che vedi in foto, per il resto, sinceramente, e me lo sono riletto 10 volte il messaggio, io non ce la faccio a seguire il ragionamento , se riuscissi a vedere il risultato della tabella forse ci potrei arrivare , sicuramente mi perdo qualcosa per strada , ti metto qui il codice di tutto munizioni.php , quando puoi magari gli dai un'occhiata.

Codice: Seleziona tutto

<html>
<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
		<title>Cesim Database</title>
		<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
		<link rel='stylesheet' href='stile.css' type='text/css' media='all' />
		 <link href="indice.css" rel="stylesheet">
	<header class="site-header">
		
			<div class="header-fixed">
				<h1>
					<img src="image/logo1.png" </a>
				
				</h1>
				
			</div>

			<div class="header-relative"></div>
			
		</header>

		<div class="site-content">
		
		</div>
		

<?php

include("./include/my_connect.php");
include("./include/my_functions.php");

$cat_cor	= request_var('cat', 1);	
$id_cor   	= request_var('id', 1);

// Elabora la lista dei recors della Categoria corrente
$query1 = "SELECT * 
   FROM munizioni  
   WHERE cat = " . $cat_cor . "
   ORDER by Calibro ";
   
$result1 = mysqli_query($link, $query1);
$i = 0;
while($row1=mysqli_fetch_array($result1))
{
	$id_calibro[$i]		= $row1['id_calibro'];
	$Calibro[$i]       	= $row1['Calibro'] ;
	
	echo "Risultato= " . $id_calibro[$i] . " - " . $Calibro[$i] . "<br>";
	++$i;
}

// Elabora id_calibro selezionato o quello predefinito
$query2 = "SELECT * 
   FROM munizioni  
   WHERE id_calibro = " . $id_cor ;
   
$result2 = mysqli_query($link, $query2);
$row2=mysqli_fetch_array($result2);

	$Bossolo_cor      	=  $row2['Bossolo'] ;
	$Calibro_cor       	=  $row2['Calibro'] ;
	$Nazione_cor      	=  $row2['Nazione'] ;
	$Produttore_cor    	=  $row2['Produttore'] ;
	$Anno_cor      		=  $row2['Anno'] ;
	$Modello_cor      	=  $row2['Modello'] ;
	$Fondello_cor    	=  $row2['Fondello'] ;
	$Note_cor     		=  $row2['Note'] ;
	$Cartuccia_cor     	=  $row2['Cartuccia'] ;
	
	
	echo "<br>Record selezionatoo= " . $Bossolo_cor. " - " . $Calibro_cor  . "<br>";

mysqli_close($link);

?>

</head>
<body>

		<p><strong><font size="5"><font color="blue">&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;Database online del CeSIM</font></p>
		
<a id="Button1" href="http://localhost/data/query.html" style="position:absolute;left:900px;top:160px;width:118px;height:26px;z-index:0;">New Search</a>
<a id="Button1" href="http://localhost/data/query.html" style="position:absolute;left:1050px;top:160px;width:118px;height:26px;z-index:0;">Home</a>
</table>
	 
	 <table style="with: 50%;" border="1" bgcolor="#ffffff" 
      
	  	 <?php
	 
	 {
	 ?>
	
		<tr>
		
			
			<td style='width:15%; text-align: center;'>
				<img src='./immagini/<?=$Fondello_cor[$x]?>' width='150' alt='immagine ' >
				</td>
				<td>
				<img src='./immagini/<?=$Cartuccia_cor[$x]?>' width='450' alt='immagine ' >
			</td>
			
						<td style='width:65%;'><font size="2">
			   &emsp;&emsp; Calibro = <strong><font color="red"><?=$Calibro_cor[$x]?></font></strong><br><br>
				&emsp;&emsp; Nazione = <strong><?=$Nazione_cor[$x]?></strong>
				&emsp;&emsp; Produttore = <strong><?=$Produttore_cor[$x]?></strong><br><br>
				&emsp;&emsp; Anno = <strong><?=$Anno_cor[$x]?></strong>&emsp;&emsp;&emsp;
				&emsp;&emsp; Modello = <strong><?=$Modello_cor[$x]?></strong>&emsp;&emsp;
				&emsp;&emsp; Bossolo = <strong><?=$Bossolo_cor[$x]?></strong>
				&emsp;&emsp; id_calibro = <strong><?=$id_calibro_cor[$x]?></strong><br><br>
				&emsp;&emsp; Note = <strong><?=$Note_cor[$x]?></strong>
			</td>
			
		</tr>
		
	<?php
	 }
	 ?>
</table>
 
</body>
<script>   <!-- blocco tasto destro del mouse -->
  function blocco_mousedx()
   { return(false); }
  document.oncontextmenu = blocco_mousedx;
</script>
</html



phpBB version : 3.3.11
php version : 8.2.16
Avatar utente
Micogian
Globalmod
Globalmod
Messaggi: 588
Iscritto il: 17/03/2016, 17:53
Link del Forum: https://www.actaplantarum.org

Re: Inserire immagini in un database

Messaggio da Micogian »

Sbagli le variabili, io ti ho detto di non usare più le variabili $Calibro[$x] e simili nella tabella ma $Calibro_cor perchè il record è uno solo e quindi non c'è bisogno del "for" che èun ciclo che avrebbe mostrato $Calibro[1], $Calibro[2], $Calibro[3], ecc. [$x] è un numero che viene utilizzato quando i records sono più di uno.
Le query funzionano e questo lo puoi vedere con il risultato che danno con gli "echo",
Ma nell'echo della seconda query io ho usato $Calibro_cor e mi sembra che il dato venga interpretato, ma se nella tabella mi metti $Calibro_cor[$x] è ovvio che la variabile non funzioni, non esiste. Dal momento che togli il "for" togli anche [$x], ecco perchè ho usato $Calibro_cor, perchè la variabile riguarda un solo record.
Dal momento che togli il "for" devi togliere anche il php del body

Codice: Seleziona tutto

<?php
{
?>
Non serve a niente, non c'è più il "for" e quindi nemmeno i codici php anche se questo non ti da errore, sono solo inutili.
Non mi hai ancora detto come vuoi strutturare la pagina, Una volta che completi il database con le Categorie, devi decidere se usare un Select per selezionare il Calibro oppure creare una lista dei calibri e da qui selezionare il record da mettere in tabella.
Nella tabella ci sarà 1 solo record, quello selezionato. Evidentemente la scelta di come vuoi fare necessita di adattamento de codice perchè ancora manca questa parte. Per provare puoi cambiare i valori nell'url ma poi bisogna fare il Select o la lista.
Poi ti ho detto che il codice html di una pagina web deve stare nel "body", perchè metti la parte "<header>" nel "head" ?
Avatar utente
Micogian
Globalmod
Globalmod
Messaggi: 588
Iscritto il: 17/03/2016, 17:53
Link del Forum: https://www.actaplantarum.org

Re: Inserire immagini in un database

Messaggio da Micogian »

Codice: Seleziona tutto

<html>
<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
		<title>Cesim Database</title>
		<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
		<link rel='stylesheet' href='stile.css' type='text/css' media='all' />
		 <link href="indice.css" rel="stylesheet">
	<header class="site-header">
		
			<div class="header-fixed">
				<h1>
					<img src="image/logo1.png" </a>
				
				</h1>
				
			</div>

			<div class="header-relative"></div>
			
		</header>

		<div class="site-content">
		
		</div>
		

<?php

include("./include/my_connect.php");
include("./include/my_functions.php");

$cat_cor	= request_var('cat', 1);	
$id_cor   	= request_var('id', 1);

// Elabora la lista dei recors della Categoria corrente
$query1 = "SELECT * 
   FROM munizioni  
   WHERE cat = " . $cat_cor . "
   ORDER by Calibro ";
   
$result1 = mysqli_query($link, $query1);
$i = 0;
while($row1=mysqli_fetch_array($result1))
{
	$id_calibro[$i]		= $row1['id_calibro'];
	$Calibro[$i]       	= $row1['Calibro'] ;
	
	echo "Risultato= " . $id_calibro[$i] . " - " . $Calibro[$i] . "<br>";
	++$i;
}

// Elabora id_calibro selezionato o quello predefinito
$query2 = "SELECT * 
   FROM munizioni  
   WHERE id_calibro = " . $id_cor ;
   
$result2 = mysqli_query($link, $query2);
$row2=mysqli_fetch_array($result2);

	$Bossolo_cor      	=  $row2['Bossolo'] ;
	$Calibro_cor       	=  $row2['Calibro'] ;
	$Nazione_cor      	=  $row2['Nazione'] ;
	$Produttore_cor    	=  $row2['Produttore'] ;
	$Anno_cor      		=  $row2['Anno'] ;
	$Modello_cor      	=  $row2['Modello'] ;
	$Fondello_cor    	=  $row2['Fondello'] ;
	$Note_cor     		=  $row2['Note'] ;
	$Cartuccia_cor     	=  $row2['Cartuccia'] ;	
	echo "<br>Record selezionatoo= " . $Bossolo_cor. " - " . $Calibro_cor  . "<br>";
mysqli_close($link);
?>

</head>
<body>
	<header class="site-header">		
		<div class="header-fixed">
			<h1><img src="image/logo1.png" </a></h1>				
		</div>
		<div class="header-relative"></div>			
	</header>			
	<div class="site-content">
		<p>A cosa serve questo ?</p>
	</div>
	<p><strong><font size="5"><font color="blue">&emsp;&emsp;&emsp;&emsp;&emsp;&emsp;Database online del CeSIM</font></p>		
	<a id="Button1" href="http://localhost/data/query.html" style="position:absolute;left:900px;top:160px;width:118px;height:26px;z-index:0;">New Search</a>
	<a id="Button1" href="http://localhost/data/query.html" style="position:absolute;left:1050px;top:160px;width:118px;height:26px;z-index:0;">Home</a>
	</table> <!-- c'è la chiusura di un table ma dov'è l'apertura? -->	 
	<table style="with: 50%;" border="1" bgcolor="#ffffff" >
		<tr>			
			<td style='width:15%; text-align: center;'>
				<img src='./immagini/<?=$Fondello_cor?>' width='150' alt='immagine ' >
				</td>
				<td>
				<img src='./immagini/<?=$Cartuccia_cor?>' width='450' alt='immagine ' >
			</td>
			<td style='width:65%;'><font size="2">
			   &emsp;&emsp; Calibro = <strong><font color="red"><?=$Calibro_cor?></font></strong><br><br>
				&emsp;&emsp; Nazione = <strong><?=$Nazione_cor?></strong>
				&emsp;&emsp; Produttore = <strong><?=$Produttore_cor?></strong><br><br>
				&emsp;&emsp; Anno = <strong><?=$Anno_cor?></strong>&emsp;&emsp;&emsp;
				&emsp;&emsp; Modello = <strong><?=$Modello_cor?></strong>&emsp;&emsp;
				&emsp;&emsp; Bossolo = <strong><?=$Bossolo_cor?></strong>
				&emsp;&emsp; id_calibro = <strong><?=$id_calibro_cor?></strong><br><br>
				&emsp;&emsp; Note = <strong><?=$Note_cor?></strong>
			</td>			
		</tr>
	</table> 
</body>
<script>   <!-- blocco tasto destro del mouse -->
  function blocco_mousedx()
   { return(false); }
  document.oncontextmenu = blocco_mousedx;
</script>
</html
Devi sistemare meglio la parte dopo l'<header> e prima del <table>

PS: questa mattina non ci sono.
Rispondi