Mysql_result(): supplied argument is not a valid MySQL result resource [Résolu]

Messages postés
408
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
18 décembre 2012
- - Dernière réponse : cs_ghuysmans99
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
- 3 oct. 2011 à 21:47
Bonjour,

Je débute et j'en viens à mes premiers problèmes.

J'ai une classe mysql, j’exécute une requete : $result = Mysql::MyQuery("SELECT COUNT(*) FROM nd_membres WHERE pseudo='$pseudo';");

Si je fais :

print_r($result); J'obtiens :

Array ( [0] => Array ( [COUNT(*)] => 5 ) )

Tout marche le même pseudo existe 5 fois.

Maintenant j'essaye de traiter le résultat pour dire vérifier si le pseudo existe déja avec :

if(mysql_result($result,0)!=0)
{
return 1;
}

Et la j'obtiens un Warning :

Warning: mysql_result(): supplied argument is not a valid MySQL result resource

Je ne comprend pas vraiment. Comment traiter l'ARRAY ? Pourquoi cela ne marche t'il pas? Je ne sais pas à quoi ressembler une réponse SQL, ne s'agit t'il pas d'un array?

Merci pour votre aide par avance.
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
11
3
Merci
echo $result[0][0]; devrait fonctionner. L'utilité de cette classe ? Aucune si elle ne gère rien d'autre que MySQL (autant utiliser PDO, si on ne veut pas toucher à du "bas niveau" !)

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 121 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_ghuysmans99
Messages postés
408
Date d'inscription
lundi 16 décembre 2002
Statut
Membre
Dernière intervention
18 décembre 2012
0
Merci
Je viens de voir que la classe MYsql que j'utilise fais un traitement sur la REQUETE SELECT...

//si SELECT récupération du résultat dans un tableau associatif
// ------------------------------------------------------------
if ( $Type_requete == "SELECT" )
{
$results = array() ;
$this->MyNbLigne = @mysql_num_rows($result) ;

//construction du tableau associatif
// ---------------------------------
while ($ligne = @mysql_fetch_assoc($result)) array_push($results,$ligne) ;

//libération de la mémoire
// -----------------------
@mysql_free_result($result) ;

return $results ;
}

Quel est l'intérêt ? Si quelqu'un pourrait m'expliquer ca serait gentil. Pourquoi ne pas faire un simple return de la requete mysql et traiter ca traditionnellement?
Commenter la réponse de cs_zzzzzz