Bonjour,
J'ai un souci sur quelque chose de basique que je ne comprends pas...ça semble tout bête mais je ne vois pas...
Il n'y a rien de franchement original, c'est du code de base...ce que je ne comprends pas c'est que cela m'affiche toujours "true" même quand la table de valeur est vide où quand je mets une condition "where" bidon qui fait qu'il ne peut pas y avoir de résultat qui corresponde, donc il ne devrait pas entrer dans la condition et aller direct dans le else ce qu'il ne fait pas...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $requet = "SELECT * FROM `users`"; if($result = mysql_query($requet)) { echo "true"."<br />"; } else { echo "false"."<br />"; }
Et quand j'affiche le contenu de result via un "echo", il m'affiche ceci au lieu de false...
Resource id #34
Je précise que j'ai mis ce bout de code de test en tout tout début après le mysql_connect pour l'isoler, donc il n'est pas dans une requête parente. J'ai vérifié mon fichier de config pour vérifié que je testais la bonne base de données mais c'est correct, je peux recuperer des valeurs de la table et les afficher sans probleme mais la condition if d'existence ne fonctionne pas...
J'ai tenté d'autres dérivés du style comme indiqué ici ( http://php.net/manual/en/function.mysql-query.php )
J'ai aussi tenté de mettre le 2eme argument facultatif de connexion de la fonction mysql_query($requet,$id_connexion) mais ça mène toujours au même résultat, il me dit toujours qu'il trouve quelquechose dans la table alors que quand je lui demande d'afficher quelquechose, la variable est vide ce qui est normal vu qu'il n'y a pas de résultats ou que que la table est vide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 $requet = "SELECT * FROM `users`"; $result = mysql_query($requet) if(!$result) { echo "false"."<br />"; } else { echo "true"."<br />"; }
J'ai fait un copier coller d'un exemple de tutorial trouvé ici
et idem...je ne vois pas, il ne veut pas entrer dans le else...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $requet = "SELECT * FROM users"; if($result = mysql_query($requet)) { while($ligne = mysql_fetch_object($result)) { $id = $ligne->id; $name = $ligne->name; $address = $ligne->address; echo "$id - $name, $address <br />"; } } else { echo Erreur de requête de base de données.; }ça doit être quelque chose de gros comme une maison qui fait que je tourne autour du pot et que je ne vois pas...car il me semble que je l'ai déja utilisé un bon nombre de fois et que ça marchait...
Une idée !? Merci d'avance.
Partager