DataMAX Posté(e) le 29 mars 2010 Partager Posté(e) le 29 mars 2010 Bonsoir/jour à tous, Je débute en PHP, et je bute ( ) sur une erreur: $noms_temp = mysql_query("SELECT username FROM users WHERE user_id = " . $_POST['expediteur'] . " OR user_id = " . $_POST['destinataire']); $noms = mysql_fetch_row($noms_temp); Je veux donc lancer une requète SQL et placer les résultats dans un tableau numéroté. Ce dont je suis sûr: - Mes variables $_POST. Vérifiées avec un echo avant. - Ma requète SQL, elle me renvois le résultat voulu avec PhpMyAdmin. - Aucune erreur de syntaxe à priori - Un printr($noms) me renvois une seule ligne, alors qu'il devrait y en avoir deux. Après avoir vaillamment luté, je m'en remet à vous Merci d'avance. Lien vers le commentaire Partager sur d’autres sites More sharing options...
schtroumpf Posté(e) le 30 mars 2010 Partager Posté(e) le 30 mars 2010 Bonjour, Je pense que ça doit être ça la solution, faire une boucle pour afficher toutes les valeurs. $noms_temp = mysql_query("SELECT username FROM users WHERE user_id = " . $_POST['expediteur'] . " OR user_id = " . $_POST['destinataire']); $noms = mysql_fetch_row($noms_temp); foreach( $nom as $toto ) echo $toto . '<br />'; Lien vers le commentaire Partager sur d’autres sites More sharing options...
DataMAX Posté(e) le 30 mars 2010 Auteur Partager Posté(e) le 30 mars 2010 En fait je ne veux aucunement les afficher. Normalement, la requête devrait me renvoyer deux résultats, et j'aimerais les placer les deux dans mon row. Seulement, dans le tableau il n'y a qu'un seul résultat, printr me le confirme Lien vers le commentaire Partager sur d’autres sites More sharing options...
tsubasaleguedin Posté(e) le 30 mars 2010 Partager Posté(e) le 30 mars 2010 En fait je ne veux aucunement les afficher. Normalement, la requête devrait me renvoyer deux résultats, et j'aimerais les placer les deux dans mon row.Seulement, dans le tableau il n'y a qu'un seul résultat, printr me le confirme var_dump($noms) Lien vers le commentaire Partager sur d’autres sites More sharing options...
DataMAX Posté(e) le 30 mars 2010 Auteur Partager Posté(e) le 30 mars 2010 Personne ne peux me dire d'où vient le problème ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
schtroumpf Posté(e) le 31 mars 2010 Partager Posté(e) le 31 mars 2010 Bonjour, J'avais pas vu que tu utilisais mysql_fetch_row(), cette fonction ne renvoie qu'une ligne du résultat de ta requête mysql et avance le pointeur d'un cran. Si tu veux tous les enregistrements il te faut faire une boucle: $noms_temp = mysql_query("SELECT username FROM users WHERE user_id = " . $_POST['expediteur'] . " OR user_id = " . $_POST['destinataire']); $i=0; while($row=mysql_fetch_row($noms_temp)){ $nom[$i] = $row[0]; $i++; } Ou alors utilise la fonction mysql_fetch_array() à la place: $noms_temp = mysql_query("SELECT username FROM users WHERE user_id = " . $_POST['expediteur'] . " OR user_id = " . $_POST['destinataire']); $noms = mysql_fetch_array($noms_temp); Lien vers le commentaire Partager sur d’autres sites More sharing options...
DataMAX Posté(e) le 31 mars 2010 Auteur Partager Posté(e) le 31 mars 2010 Bon, ça ne fonctionne correctement qu'en séparant la requête en deux, et en utilisant mysql_fetch_array, comme tu me le conseillais. Merci à toi Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.