Message : aucun résultat sous SQL

Fermé
skins Messages postés 89 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 7 mars 2013 - 4 nov. 2009 à 17:54
 pebkac - 8 nov. 2009 à 21:28
Bonjour,
je rencontre un petit problème sur mes requête SQL, c'est que, quant je fait une recherche avec un critère qui n,'existe pas sur ma BD, cela me donne un :

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/plugins/content/jumi.php(69) : eval()'d code on line 20

j'ai besoin de gérer cette Erreur Svp
A voir également:

6 réponses

Dynamix Messages postés 202 Date d'inscription dimanche 22 mars 2009 Statut Membre Dernière intervention 30 avril 2011 76
Modifié par Dynamix le 26/03/2010 à 09:01
Tu peux ptet faire un test préventif du genre :

if(mysql_num_rows($reponse) == 0) { // Si aucune ligne en retour
$donnees = mysql_fetch_array ($reponse);
} else {
echo "Résultat vide";
}
1
bissdebrazza Messages postés 2065 Date d'inscription vendredi 29 juin 2007 Statut Contributeur Dernière intervention 7 décembre 2017 712
4 nov. 2009 à 23:55
Salut!
si tu nous montrais le code source?
0
skins Messages postés 89 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 7 mars 2013 13
5 nov. 2009 à 11:34
Bonjour,
ci dessous le code
-- je récupére une variable :
$iduser = $_POST['IDUSER'];

$reponse = mysql_query("select * FROM  Table where ID=".$iduser."");
$donnees = mysql_fetch_array ($reponse);


mais quant $iduse n'existe pas cela me donne l'erreur que j'ai cité dna mon 1er poste

Merci d'avance
0
salut
je suis pas une lumière en php/MySQL mais n'aurait-il pas mieux valut écrire
$reponse = mysql_query("select * FROM  Table where ID='".$iduser."'");
0

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

Posez votre question
moderno31 Messages postés 870 Date d'inscription mardi 23 juin 2009 Statut Membre Dernière intervention 8 août 2012 92
8 nov. 2009 à 18:43
1ère chose tester la requete directement en base de données pour identifier la source du pb.
0
re

1. s'assurer que $iduser n'est pas vide
(je sais pas faire)

2. tester s'il existe au moins une ligne dans la base
$reponse = mysql_query("select count(*) FROM Table where ID='".$iduser."'");
nb: dégager les apostrophes si t'es sûr que $iduser est numérique et que ID est numérique
fetcher le count dans $nbre. puis si $nbre = 1 alors iduser existe et si $nbre = 0 alors il existe pas

3. si et seulement si $nbre = 1 alors récupérer la ligne
$reponse = mysql_query("select * FROM Table where ID='".$iduser."'"); nb: dégager...
$données = mysql_fetch_array($reponse)

sinon, il y a cette page qui te rappelle que tu peux te servir de mysql_num_rows($reponse) pour t'éviter mon point 2.
0