Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-09-2006, 12:06   #1
Traxsung
Senior Member
 
L'Avatar di Traxsung
 
Iscritto dal: Apr 2005
Messaggi: 5245
[PHP] Visualizzazione dati

Un volta inseriti i dati all'interno del mio database, ho la necessità di visualizzarli in una pagina per l'eventuale consultazione.
Per far questo ho utilizzato la funzione mysql_fetch_row().... ma purtroppo mi crea non pochi problemi.

Di seguito riporto il codice da me scritto:


Codice:
$sql = "SELECT NOME,COGNOME,INDIRIZZO FROM rubrica"; $result = mysql_query($sql); $array = mysql_fetch_row($result); print "NOME: ".$array[0]."<br>"; print "COGNOME: ".$array[1]."<br>"; print "INDIRIZZO: ".$array[1]."<br>";


Di seguito invece riporto l'errore che mi visualizza a video:

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in c:\programmi\easyphp1-8\www\gestionale peppe\visualizza.php on line 18
NOME:
COGNOME:
INDIRIZZO:

Da cosa può dipendere ?
Traxsung è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 12:15   #2
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
scrivere su + righe no è

comunque

Codice PHP:
$sql "SELECT NOME,COGNOME,INDIRIZZO FROM rubrica"
$result mysql_query($sql); 
$array mysql_fetch_row($result); 

print 
"NOME: ".$array[0]."<br>"
print 
"COGNOME: ".$array[1]."<br>"
print 
"INDIRIZZO: ".$array[1]."<br>"
dovresti fare:
Codice PHP:
$count=mysql_num_rows($result);

for (
$i=0;$i<$count$i++) //stampi i dati 
indirizzo sarà anche nel 2
~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso

Ultima modifica di Fenomeno85 : 04-09-2006 alle 12:17.
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 12:15   #3
loris_p
Senior Member
 
L'Avatar di loris_p
 
Iscritto dal: Aug 2006
Messaggi: 365
la connessione al database l'hai precedentemente aperta, vero?
Quote:
non manca nel codice sql where?
non è obbligatoria..
serve solo a restringere la tabella dei risultati..

Ultima modifica di loris_p : 04-09-2006 alle 12:17.
loris_p è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 12:16   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da Traxsung
Da cosa può dipendere ?
Hai testato quanto vale $result?? La query per qualche motivo (che non saprei) può essere fallita.
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 12:29   #5
Traxsung
Senior Member
 
L'Avatar di Traxsung
 
Iscritto dal: Apr 2005
Messaggi: 5245
Per Fenomeno85

Ho fatto come dici te... ma contunuo ad avere sempre lo stesso problema:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\programmi\easyphp1-8\www\gestionale peppe\visualizza.php on line 18


Per Andbin

Come faccio a testa $result??
basta un print $result ??
Traxsung è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 12:37   #6
Traxsung
Senior Member
 
L'Avatar di Traxsung
 
Iscritto dal: Apr 2005
Messaggi: 5245
ho provato a fare un stampa per vedere se mi stampa $result. Riporto il codice:

Codice:
<?
// dati per la connessione al database

$db_host       = "localhost";
$db_user       = "root";
$db_password   = "";
$db_name       = "test";

// connessione al database

$db            = mysql_connect ($db_host, $db_user, $db_password);
$db_forum      = mysql_select_db ($db_name, $db);

// query di inserimento


$result = mysql_query("SELECT NOME,COGNOME,INDIRIZZO FROM rubrica");
echo $result;

?>

Purtroppo non mi visualizza nulla
Questo vuol dire che non esegue la query ??
Traxsung è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 13:01   #7
Traxsung
Senior Member
 
L'Avatar di Traxsung
 
Iscritto dal: Apr 2005
Messaggi: 5245
per quanto riguarda la visualizzazione ho risolto ^_^
Il problema stava nel fatto ho sbagliato ad inserire il campo. Ovvero io inserivo il campo INDIRIZZO, quando in realtà era TELEFONO

Questo è il codice corretto:
Codice:
$result = mysql_query($sql) or die ("Errore: " .mysql_error() );
$array = mysql_fetch_row($result); print "NOME: ".$array[0]."<br>"; print "COGNOME: ".$array[1]."<br>"; print "INDIRIZZO: ".$array[1]."<br>";
Così facendo però lui mi stampa solamente il contenuto della prima riga.
Se io volessi visualizzare il contenuto di tutte le righe devo usare un ciclo for ??
Traxsung è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 13:19   #8
d4rkstar75
Member
 
Iscritto dal: Apr 2006
Messaggi: 56
Ciao,
potresti usare un ciclo while del tipo:

Codice:
$result = mysql_query($sql) 
           or die ("Errore: " .mysql_error() );
while($array = mysql_fetch_row($result)) {
    print "NOME: ".$array[0]."<br>"; 
    print "COGNOME: ".$array[1]."<br>"; 
    print "INDIRIZZO: ".$array[1]."<br>";
}
d4rkstar75 è offline   Rispondi citando il messaggio o parte di esso
Old 04-09-2006, 13:40   #9
Traxsung
Senior Member
 
L'Avatar di Traxsung
 
Iscritto dal: Apr 2005
Messaggi: 5245
Grazie d4rkstar75... ho risolto proprio con un ciclo while
Traxsung è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:02.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v