message d'erreur mysql

Eléphanteau du PHP | 43 Messages

10 sept. 2005, 02:16

Bonjour,
j'ai une erreur quand je charge une fonction avec comme message: "Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/users/anonymousguest/quizz_tp/new.php on line 84"
$number_text_given = mt_rand(1,4);

//attribution du texte donné
$retour = mysql_query("SELECT * FROM table WHERE id=$id");
while ($donnees = mysql_fetch_array($retour))  //ligne 84
{
	$text_given = $donnees[$number_text_given];
}
d'où vient cette erreur :?:
Modifié en dernier par anonymousguest le 10 sept. 2005, 15:52, modifié 1 fois.

Eléphant du PHP | 417 Messages

10 sept. 2005, 02:49

---
Modifié en dernier par JazzFinder le 28 juin 2006, 19:49, modifié 1 fois.

Mammouth du PHP | 1311 Messages

10 sept. 2005, 10:05

salut
essaye
SELECT * FROM table WHERE id="'.$id.'"'

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

10 sept. 2005, 13:02

Si id est un champ de type numérique (ce qu'il devrait être...),
la syntaxe que je te recommande est :
$requete = "SELECT * FROM table WHERE id=".$id;        // NB : mieux vaut préciser les champs qu'utiliser le caractère générique *
$retour  = mysql_query($requete) or die ("Planté !");
Je te conseille de fractionner les étapes afin de limiter les risques d'erreurs. ;)

Est-ce que cela résoud ton problème ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

10 sept. 2005, 13:57

Pour affluer dans le sens de Albat, si ta connexion a la bdd est mauvaise, c'est possible que le mysql_query() retourne FALSE et que tu ne puisse pas utiliser mysql_fetch_array() sur FALSE
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphanteau du PHP | 43 Messages

10 sept. 2005, 15:52

merci, avec les quillemets ca marche :)

Administrateur PHPfrance
Administrateur PHPfrance | 11457 Messages

10 sept. 2005, 15:58

NB : Le [Résolu] s'obtient en cliquant sur le bouton "Mettre Résolu"
juste en-dessous du logo PHPFrance en haut à gauche de la page. ;)