Problème mysql_fetch_array

Résolu/Fermé
aneantisseur Messages postés 384 Date d'inscription dimanche 8 mars 2009 Statut Membre Dernière intervention 13 juillet 2018 - 6 févr. 2010 à 14:09
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 - 6 févr. 2010 à 19:45
Bonjour, j'ai un ptit problème avec mon code. Le schéma : Je selectionne le nom du casque du membre dans la table mysql, je selectionne ce nom dans la table armes (la table ou est rangée tout les équipements) puis je fais un tableau pour lister ses caractéristiques. Le problème survient au moment du listing, je fais un mysql_fetch_array et il ne me retroune aucune valeur. J'ai bien essayé de mettre un or die mais il stoppe tout le code au moment du mysql_fetch_array. Je ne vois pas l'erreur :s

$montre_casque_brut = mysql_query('SELECT casque FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());
$montre_torse_brut = mysql_query('SELECT torse FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());
$montre_gant_brut = mysql_query('SELECT gant FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());
$montre_botte_brut = mysql_query('SELECT botte FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());
$montre_arme_brut = mysql_query('SELECT arme FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());
$montre_bouclier_brut = mysql_query('SELECT bouclier FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());

$montre_casque = mysql_query('SELECT * FROM armes WHERE nom=\''.$montre_casque_brut.'\'') or die (mysql_error());
$montre_torse = mysql_query('SELECT * FROM armes WHERE nom=\''.$montre_torse_brut.'\'') or die (mysql_error());
$montre_gant = mysql_query('SELECT * FROM armes WHERE nom=\''.$montre_gant_brut.'\'') or die (mysql_error());
$montre_botte = mysql_query('SELECT * FROM armes WHERE nom=\''.$montre_botte_brut.'\'') or die (mysql_error());
$montre_arme = mysql_query('SELECT * FROM armes WHERE nom=\''.$montre_arme_brut.'\'') or die (mysql_error());
$montre_bouclier = mysql_query('SELECT * FROM armes WHERE nom=\''.$montre_bouclier_brut.'\'') or die (mysql_error());

$montre_casque_array = mysql_fetch_array($montre_casque);
$montre_torse_array = mysql_fetch_array($montre_torse);
$montre_gant_array = mysql_fetch_array($montre_gant);
$montre_botte_array = mysql_fetch_array($montre_botte);
$montre_arme_array = mysql_fetch_array($montre_arme);
$montre_bouclier_array = mysql_fetch_array($montre_bouclier);


Merci.

5 réponses

okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
6 févr. 2010 à 15:49
Salut,
mysql_query('SELECT casque FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());

Pourquoi échappe tu l'apostrophe?
écrit plutôt ceci :
mysql_query('SELECT casque FROM avatars WHERE pseudo="'.$_SESSION['pseudo'].'" ') or die (mysql_error());
0
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505
6 févr. 2010 à 16:29
Toutes tes variables "_brut" sont des ressources de mysql_query, donc tu ne peux pas les préciser dans les autres requêtes : il faut récupérer la chaine de caractère avec mysql_fetch_array puis ['tonchamp'].

Je ne suis pas sûr que ça fonctionne, mais essaye en remplaçant
$montre_casque_brut = mysql_query('SELECT casque FROM avatars WHERE pseudo=\''.$_SESSION['pseudo'].'\'') or die (mysql_error());
par
$montre_casque_brut = mysql_fetch_array(mysql_query('SELECT casque FROM avatars WHERE pseudo="'.$_SESSION['pseudo'].'"') or die (mysql_error()))['casque'];
en faisant ça pour chaque requête "brut"
0
aneantisseur Messages postés 384 Date d'inscription dimanche 8 mars 2009 Statut Membre Dernière intervention 13 juillet 2018 18
6 févr. 2010 à 19:31
Merci beaucoup, je vais de suite tester ca
0
aneantisseur Messages postés 384 Date d'inscription dimanche 8 mars 2009 Statut Membre Dernière intervention 13 juillet 2018 18
6 févr. 2010 à 19:42
Ca marche parfaitement. J'ai une autre question maintenant concernant la balise <area> qui est dans <map>.
Est-il possible de mettre une image en fond ? A part le css, car l'image change en fonction du nom.
Merci.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
avion-f16 Messages postés 19252 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 10 février 2025 4 505
6 févr. 2010 à 19:45
Crées un autre sujet et soit un peu plus complet.
De toutes façon il faudra du CSS car la balise area ne peut rien contenir.
0