Message : aucun résultat sous SQL

skins Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   -  
 pebkac -
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   Statut Membre Dernière intervention   76
 
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   Statut Contributeur Dernière intervention   712
 
Salut!
si tu nous montrais le code source?
0
skins Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   13
 
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
pebkac
 
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 872 Date d'inscription   Statut Membre Dernière intervention   92
 
1ère chose tester la requete directement en base de données pour identifier la source du pb.
0
pebkac
 
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