13/04/2010 19:17:57
Di sicuro il problema non era quello. Comunque, se vuoi programmare, una cosa essenziale che devi imparare a fare e l'inspection delle variabili. Se usi un framework e un ambiente di sviluppo di certo hai fior di sistemi di debug da imparare e sfruttare, ma di base, un trutto che sempre funziona, e' far uso di breakpoints e stampare le variabili.
In pratica, nel punto del codice che non funziona come dovresti, inserisci, in un punto che sai che l'esecuzione raggiunge, una exit(); (nel caso del php) e, prima della exit, fai l'echo/il print di tutte le variabili che sono coinvolte.
Se una variabile non ha il valore che ti aspetti, ripeti l'operazione andando indietro nel codice in ordine di esecuzione. Prima o poi trovera il punto esatto in cui il valore che ti aspettavi si e' perso. A quel punto in genere e' facile capire il perche'.
Se hai a che fare con una query che non produce quello che ti aspetti fanne sempre l'echo o il print, poi seleziona la query come viene stampata a video (ovvero esattamente come viene passata al server mysql) vai su phpmyadmin, apri la tendina sql, ed esegui la query a mano.
Se ci sono errori di sintassi te li segnala, se non ce ne sono vedi il risultato effettivo della query e puoi, a quel punto, capire per quale ragione non e' quello che ti aspettavi.
14/04/2010 18:15:25
Ragazzi, ieri funzionava, oggi sono andato per apportare delle modifiche in modo da portarmi sempre dietro i due valori anche nelle altre pagine, non ha più funzionato!
14/04/2010 18:24:23 e modificato da imatteo il 14/04/2010 18:25:24
è normale, fai così per vedere i dati:
$row=mysql_fetch_assoc($result2);
foreach($row as $value) {
echo $value .'<br>';
}
ps. non è un errore.
14/04/2010 18:54:49
D'accordo, ma dopo lo switch come funziona? Sempre nello stesso modo? Scusami le domande idiote
14/04/2010 19:01:08
non so quale fosse la query, ma direi di si.
se ti stampa i risultati desiderati, commenti quello che ti ho fatto scrivere e procedi come sopra
while($row = mysql_fetch_array($result2)) {
switch ......
14/04/2010 19:21:05
gente, tanto $result che $row non sono variabili printabili tanto alla leggera, $result e' una sorta di puntatore al risultato della query, mentre $row e' il vettore associativo delle righe della tabella risultato della query.
il procedimento corretto e' fare un while con condizione $row=mysql_fetch_array($result), che da false quando il vettore e' stato tutto scorso, e ad ogni iterazione fare print_r($row), poiche' print_r e' una funzione in grado di stampare un vettore associativo.
14/04/2010 20:11:01
Infatti dopo averlo fatto, viene sempre fuori la pagina bianca e rimane lì fermo e immobile su quella, quindi in realtà lo switch non funziona...
14/04/2010 20:21:08
15/04/2010 00:59:09
Praticamente siamo tornati all'errore originario, tutte le strade portano direttamente a "combattente", non riesco proprio a capire il perché nonostante tutto quanto sia popolato
Discussione seguita da
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum