Page 1 sur 1
Erreur de requete ?
Posté : 10 mars 2005, 22:25
par dark_vidor
$req = mysql_query("select * from joueurs order by num_C desc limit '$i','$i+1'");
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/derniere/domains/derniere-bataille.com/public_html/script/index.php on line 24
for($i=1; $i<=$total; $i++)
{
$ligne = mysql_fetch_array($req);
$id = $ligne["id"];
$email = $ligne["email"];
....
}
apparement il aime pas les $i dans la requete ??
Posté : 10 mars 2005, 22:27
par Xenon_54
LIMIT accepte un entier comme limite et non une chaine.
$req = mysql_query("select * from joueurs order by num_C desc limit $i, $i+1");
non?
Posté : 10 mars 2005, 23:19
par dark_vidor
non tjrs pas
une autre solution ?
je galere trop et si la requete fonctionne pas je ne peux pas avancer le reste

Posté : 10 mars 2005, 23:26
par mere-teresa
Que donne un echo() de la requête en sortie navigateur ?
[/u]
Posté : 10 mars 2005, 23:38
par dark_vidor
j'ai mi echo("$req"); et ça donne rien

Posté : 10 mars 2005, 23:43
par mere-teresa
j'ai mi echo("$req"); et ça donne rien

C'est norm
al, il faudrait plutôt mettre ta requête dans une variable (je parle de la chaîne de caractères là...) et faire
echo $sql;
Posté : 10 mars 2005, 23:48
par dark_vidor
$req = mysql_query("select * from joueurs order by num_C desc limit $i,$i+1");
echo $req;
ça donne tjrs rien

Posté : 10 mars 2005, 23:54
par mere-teresa
ça donne tjrs rien

$req = "select * from joueurs order by num_C desc limit $i,$i+1";
echo $req;
Essaie comme ça !!!!!!
Posté : 10 mars 2005, 23:59
par dark_vidor
ça donne
select * from joueurs order by num_C desc limit 1,1+1
select * from joueurs order by num_C desc limit 2,2+1
select * from joueurs order by num_C desc limit 3,3+1
select * from joueurs order by num_C desc limit 4,4+1
select * from joueurs order by num_C desc limit 5,5+1
select * from joueurs order by num_C desc limit 6,6+1
select * from joueurs order by num_C desc limit 7,7+1
select * from joueurs order by num_C desc limit 8,8+1
...
Posté : 11 mars 2005, 00:19
par mere-teresa
Donc ta requête est louche, tu ne vois pas ?
Au lieu d'un chiffre, il te met... 2+1, c'est étrange...mais l'Ordinateur ne se trompe jamais, c'est donc toi qui a fait une erreur. 
Essaie donc ça :
$req = mysql_query("select * from joueurs order by num_C desc limit ".$i.",".$i+1);
Posté : 11 mars 2005, 00:28
par dark_vidor
hum nan en fait je crois que j'ai compris
je souhaite selectionner qu'une seule ligne a chaque coup donc ma requete doit plutot etre
$req = mysql_query("select * from joueurs order by num_C desc limit ".$i.",1");
dans l'interface phpmyadmin cette requete fonctionne mais dans la realité j'ai tjrs la meme erreur
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/derniere/domains/derniere-bataille.com/public_html/script/index.php on line 24
Posté : 11 mars 2005, 00:41
par mere-teresa
Qu'est-ce que tu mysql_fetch_array() ?
Et quelle est la ligne 24 ?
Bravo à toi d'avoir bien modifié ta requête, en tous cas...
Posté : 11 mars 2005, 01:20
par Hubert Roksor
Tu devrais changer le début de ton script en quelque chose comme:
$sql = 'SELECT *
FROM joueurs
ORDER BY num_C DESC
LIMIT ' . $i;
if (!$result = mysql_query($sql))
{
die("Erreur <b>'" . mysql_error() . "'<hr />" . nl2br($sql));
}
Quant à $i... je n'ai pas compris ce que c'était, je pense que tu as mal lu la doc sur LIMIT...
Posté : 11 mars 2005, 19:44
par dark_vidor
ligne 24 :
$ligne = mysql_fetch_array($req);