c'est quoi le probleme ?

Répondre
er-issam
le 24/06/2009 à 12:30
er-issam
Bonjour,
voila mon code :
<?php
$user = 6;
for($i = 1; $i < $menu_count + 1; $i++)
{
$query = 'SELECT * FROM `matable` WHERE `id`='.$user.' AND `page_type` = '.$_POST['type'.$i];
$result = mysql_query($query);
echo mysql_num_rows($result).'<br>';
}
?>


sachant que la requette est vrai pour les 5 premier enregistrement

mon resultat ne donne pas ce qui est prevu :

le resultat qu'on me renvoi :
1
0
0
0
0

alors qu'il doit être
1
1
1
1
1

Merci d'avance pour l'aide
اللهم يسر
LA GLOBULE
le 24/06/2009 à 12:55
LA GLOBULE
Fais des echo de $query pour voir ce que tu balances à MySQL.

Attention aussi à escaper ton $_POST['type'.$i] et à tester son existence (mysql_escape_string / isset).

PS : ton code n'est pas "optimisé". Personnellement, je ferais une seule requete avec un $query = 'SELECT * FROM `matable` WHERE `id`='.$user.' AND `page_type` IN ('.$type.');
$type étant construit avec une boucle et contenant un truc du genre "1, 3, 10" (tes valeurs de $_POST['type'.$i] en fait).
er-issam
le 24/06/2009 à 15:42
er-issam
Merci pour l'aide
j'ai trouvé ! !
au fait j'avais une erreur sur le nom de la table que j'utilise, j'ai créer une nouvelle table avec la quelle je travaillais et j'ai oublier de changer le nom sur ma requette ^^

pour l'optimisation, je suis tout a fait d'accord avec toi, c'est un peu pénible de contacter le serveur plusieurs fois, mais j'ai pas le choix, parce que je cherche a retourner le mysql_num_rows de chaque requette lancé
اللهم يسر
LA GLOBULE
le 24/06/2009 à 18:24
LA GLOBULE
Cela peut se faire en une seule requete avec un count et un GROUP BY page_type.
er-issam
le 25/06/2009 à 12:50
er-issam
au fait, quand on me renvoi le mysql_num_rows > 0, je fait un UPDATE sur cette ligne WHERE le id de cette ligne.

est ce que je peux toujours utiliser une seule requette avec le GROUP BY, comme votre proposition, parce que j'aimerai bien optimiser mon code, bien que je peux
Merci
اللهم يسر
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours