- Home
- Categorie
- Coding e Sistemistica
- Coding
- Query Non funziona
- 
							
							
							
							
							
Query Non funzionaPremetto che sto usando xmapp in locale, che ho un database che si chiama magazzino e una tabella che si chiama Articoli.
 Ho fatto un php per l'inserimento nel database dei dati che sono id, articolo, descrizione, um, e funziona.
 ora vorrei fare una query per richiamare i dati su una pagina, ci ho provato cosi ma non funziona.<html> 
 <body>
 <?php
 $username="root";
 $password="";
 $database="magazzino";mysql_connect(localhost,$username,$password); 
 @mysql_select_db($database) or die("Impossibile selezionare il database");
 $query="SELECT * FROM articoli";
 $risultati=mysql_query($query);$num=mysql_numrows($risultati); mysql_close(); 
 ?><table border="0" cellspacing="2" cellpadding="2"> 
 <tr>
 <th><font face="Arial, Helvetica, sans-serif">id</font></th>
 <th><font face="Arial, Helvetica, sans-serif">articolo</font></th>
 <th><font face="Arial, Helvetica, sans-serif">descrizione</font></th>
 </tr><?php 
 $i=0;
 while ($i < $num) {
 $id=mysql_result($risultati,$i,"id");
 $articolo=mysql_result($risultati,$i,"articolo");
 $descrizione=mysql_result($risultati,$i,"descrizione");
 ?><tr> 
 <td><font face="Arial, Helvetica, sans-serif"></font></td>
 <td><font face="Arial, Helvetica, sans-serif"></font></td>
 <td><font face="Arial, Helvetica, sans-serif"><?php echo $um;?></font></td>
 </tr>
 <?php
 $i++;
 }
 ?>
 </body>
 </html>
 mi restituisce solo [TABLE] id[/TH] 
 articolo[/TH]
 descrizione[/TH]
 [/TR]
 [/TABLE]senza dati, dove sto sbagliando? 
 Ringrazio anticipatamente per l'aiuto 
 
- 
							
							
							
							
							
Dal codice riportato sembra che tu ti sia semplicemente dimenticato di inserire qualcosa come <?php echo $id;?> nella table 
 
- 
							
							
							
							
							
Perdona la mia ignoranza.A che punto dello script dovrei inserirlo?Io ho già inserito 
 <?php echo $um;?>
 va al posto di questo.
 Grazie
 
- 
							
							
							
							
							
Ho provato a modificarlo in <?php echo $id;?> ma non funziona Grazie 
 
- 
							
							
							
							
							
<$php echo $id;?> va inserito dove vuoi che venga scritto l'id, immagino nel primo <td><font face="Arial, Helvetica, sans-serif"></font></td> 
 che diventerebbe <td><font face="Arial, Helvetica, sans-serif"><$php echo $id;?></font></td>
 comunque se lo hai messo al posto di <$php echo $um;?> avrebbe comunque dovuto riempirti la cella della tabella con l'id. A proposito di questo ultimo $um nel codice riportato non viene mai avvalorato vedo che scrivi
 $id=mysql_result($risultati,$i,"id");
 $articolo=mysql_result($risultati,$i,"articolo");
 $descrizione=mysql_result($risultati,$i,"descrizio ne");
 ma $um=mysql_result($risultati,$i,"um"); non lo vedo.
 Per debug comunque prova a farti stampare $num dopo $num=mysql_numrows($risultati); mettendo echo $num;
 Se ti stampa il numero di risultati che ti attendi allora è solo un problema di visualizzazione (anche se mi sembra improbabile)
 altrimenti stai sbagliando qualcosa nella query o connessione al db (controlla ad esempio minuscolo/maiuscolo etc)
 
- 
							
							
							
							
							
Ho fatto cosi, $num=mysql_numrows($risultati); <?php echo $num;?> e mi restituisce mysql_close(); ?> [TABLE] id[/TH] 
 articolo[/TH]
 descrizione[/TH]
 [/TR]
 [/TABLE]Il dubbio che ho anche io è che non va a leggermi il DB, però ho copiato gli stessi dati usati per inserire i dati nel DB. Sto lavorando in locale per cui user root la passord non c'è il DB è magazzino, e non ho usato maiuscole. 
 Per la query devo contattare la tabella articoli come si vede qui sotto.
 Esiste un metodo che ti restituisca dove sta il problema?Grazie 
 <?php 
 $username="root";
 $password="";
 $database="magazzino";mysql_connect(localhost,$username,$password);
 @mysql_select_db($database) or die("Impossibile selezionare il database");
 $query="SELECT * FROM articoli";
 $risultati=mysql_query($query);
 
- 
							
							
							
							
							
L'unica cosa che mi viene in mente è che la tabella sia Articoli (come scrivi nel primo post) e non articoli. Ad ogni modo c'è sicuramente qualcosa che non va se il comando echo che hai inserito per $num non ti stampa proprio nulla mi sarei aspettato almeno 0, non so che dirti di più:bho: 
 
- 
							
							
							
							
							
Ok, 
 ma non esiste un metodo/software di test che indichi dove sia il problema?
 
- 
							
							
							
							
							
Per cominciare potresti guardare qui mrwebmaster.it/php/tecniche-strumenti-debug-applicazioni_7156.html