PDA

View Full Version : Problema visualizzazione dati db


pumppkin
20-05-2006, 18:33
Allora...ho una tabella nel database mysql dove la chiave primaria è ID con attributi UNSIGNED e AUTO-INCREMENT, e un secondo campo TITOLO...
in una pagina html/php eseguo una query semplicissima:
$query = "SELECT ID, TITOLO FROM pacchetti ORDER BY DATA DESC LIMIT 0,5";

a questo punto mi faccio visualizzare sulla pagina html i dati che ho ottenuto dalla query...il problema viene qui perchè ho notato che quando nella tabella c'è una sola riga questa non viene stampata oppure mi viene stampata solo dopo aver inserito altre 2 righe e l'ultima riga creata non viene nuovamente stampata...secondo voi cosa può essere?

pumppkin
21-05-2006, 15:10
praticamente mi sono accorto che funziona così: non mi viene visualizzata l'ultima riga inserita nel db mentre quelle precedenti si...

dany84
22-05-2006, 10:09
Ciao,
se non ricordo male, in php, quando fai il for per estrarre i dati selezionati dalla query, devi far partire l'indice della riga da 0 e non da 1, se no tira fuori una riga in meno.
E' l'unica cosa che mi viene in mente... :stordita:

pumppkin
22-05-2006, 10:17
si questo lo so...cmq io utilizzo questa istruzione
while ($row = mysql_fetch_array($result)) che, teoricamente, dovrebbe restituire tutti i valori...boo...ora provo con un for e vediamo cosa succede..

dany84
22-05-2006, 11:13
si questo lo so...cmq io utilizzo questa istruzione
while ($row = mysql_fetch_array($result)) che, teoricamente, dovrebbe restituire tutti i valori...boo...ora provo con un for e vediamo cosa succede..
immaginavo lo sapessi ma era l'unica cosa che mi venisse in mente... :doh:
io ho sempre usato i for...ora è tanto che non programmo in php, non ci sono proprio "dentro"..molte cose sono dimenticate :mc:

pumppkin
23-05-2006, 09:12
niente...non ci sono riuscito...questa è la parte di codice che si occupa di selezionare i dati e visualizzarli:

$query = "SELECT ID, DATA, TITOLO FROM film ORDER BY DATA DESC LIMIT 0,5";
$result = mysql_query($query, $conn);
$row = mysql_fetch_array($result);
while ($row = mysql_fetch_array($result)){
echo 'Scadenza '.(date("d/m/Y", $row['DATA']). ' - '.$row['TITOLO']);