[SQL] Erreur bizarre ds requête toute simple

Résolu/Fermé
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 - 25 avril 2008 à 16:13
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 - 28 avril 2008 à 12:19
Bonjour,
Je deviens fou avec une stupide requête qui me fait une erreur d'exécution dans une page en php:
SELECT * FROM phpbb_posts WHERE (phpbb_posts.forum_id = 10) 

J'obtiens une erreur:
SQL ERROR [ mysql ]
[0]
SQL
No values specified for SQL IN comparison

Je remplace mon 10 par 5 et là, pas d'erreur.
Pourtant je colle ma requête dans l'admin de base de donnée Phpmyadmin et ça passe très bien.
Que fais-je de faux dans ma syntaxe?
Merci beaucoup de votre aide
A voir également:

12 réponses

dje06 Messages postés 286 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 15 octobre 2009 23
25 avril 2008 à 16:15
euh, quand tu changes le numéro de l'identifiant 10 par 5, ca fonctionne bien?
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 16:36
Oui, avec 8 j'ai la même erreur
Et tout ça fonctionne bien dans phpmyadmin.
J'ai bien des record correspondant à 8 ou 10
0
dje06 Messages postés 286 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 15 octobre 2009 23
25 avril 2008 à 16:38
quand tu fais tes test, tu les fais dans ton programme en php ou dans php myadmin?
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 16:43
Je les fais directement dans le code
$sql = 'SELECT * FROM phpbb_posts WHERE forum_id = 10 ';
C'est peut être là qu'il y a un bug?
0
dje06 Messages postés 286 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 15 octobre 2009 23
25 avril 2008 à 16:47
ben si tu change l'identifiant 10 par 5 dans ton code et que ca marche bien à ce moment là, ca prouve bien que ton code est bon
tu as fais le test?
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 18:07
Oui, avec 5 c'est bon, avec 7 aussi, mais pas 8, pas 10, etc
Alors que j'ai bien des enregistrements qui correspondent et que dans phpmyadmin je les trouvent...
thx anyway
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
25 avril 2008 à 17:37
Salut,

la syntaxe:

SELECT * FROM phpbb_posts WHERE forum_id = '10'


pas de parenthèses et pas besoin de repréciser la table puisque tu la mets dans le FROM
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 18:05
Merci à tous, mais rien à faire, c'est totalement déprimant :-(
J'essaie ça:
$sql = 'SELECT * FROM phpbb_posts WHERE forum_id = \'10\'';
et que dalle! Même erreur.
0

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

Posez votre question
dje06 Messages postés 286 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 15 octobre 2009 23
25 avril 2008 à 18:11
euh tente peut etre

SELECT * FROM phpbb_posts WHERE forum_id = "10"

des doubles cotes...
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 18:17
Merci les gars, vous êtes vraiment patients avec mon problème!
Malheureusement ça marche pas non plus avec des " "...
je suis maudit...
0
dje06 Messages postés 286 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 15 octobre 2009 23
25 avril 2008 à 18:23
mais ce que je comprend pas c'est pk ca marche avec 5 mais pas avec 10???
a ce moment là, enregistre tout, ferme tout et relance... qui sait...
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 18:33
Je peux malheureusement pas redémarrer mysql: il est hosté je sais pas trop où.
Par contre j'ai fait un flush, vérifié la table, réparé (mais elle est en ordre), optimisé, etc.

N'empêche que tu dois avoir raison parce qu'avec 8, ça passe maintenant !
Peut-être que lundi ce sera ok avec 10?!?
cheers
0
dje06 Messages postés 286 Date d'inscription mercredi 16 avril 2008 Statut Membre Dernière intervention 15 octobre 2009 23
25 avril 2008 à 18:39
mdrrr, le progrès des dev en force lol.
Cependant, je suis un peu HS là je n'ai plus quoi te dire car ca veut bien dire que ta fonction marche. Peut etre un soucis avec la DB...
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
25 avril 2008 à 18:52
Un truc de fou
En tout cas, merci encore pour les nombreuses tentatives de sauvetage!
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
26 avril 2008 à 10:15
Salut,

par phpMyadmin regardes le champ forum_id si il est bien en INT

et si cette valeur 10 existe bien réelement dans ta table.

l'erreur:
No values specified for SQL IN comparison

semble vouloir dire que tu n'as pas de valeur correspondante à la comparaison dans la requette

et le code:

$query="SELECT * FROM phpbb_posts WHERE forum_id = '10'";
$rep=mysql_query($query);
 echo "Nombre de resultats trouves: ".mysql_num_rows($rep);
while($result=mysql_fetch_array($rep)){

     echo "<br>".$result['forum_id'];

}
0
plubarj Messages postés 101 Date d'inscription jeudi 17 avril 2008 Statut Contributeur Dernière intervention 13 octobre 2008 6
28 avril 2008 à 12:19
Hello Alain
Merci 1000* pour l'input: le bout de code que tu m'as proposé m'a enfin ouvert les yeux et fait réaliser que l'erreur était en fait plus bas dans le code (en récupérant une liste d'attachments). Par un malheureux hasard, ce n'est qu'en recherchant les éléments du forum_id 10 que l'erreur était provoquée. Et vu le message d'erreur retourné, j'ai cru que le problème venait de cette requête là.
Bref, mea culpa et merci encore à tous pour votre aide.
Cheers

Plubarj Tumeur
0