jacky quartz
Messages postés19Date d'inscriptiondimanche 12 novembre 2000StatutMembreDernière intervention27 juin 2007
-
27 juin 2007 à 17:39
jacky quartz
Messages postés19Date d'inscriptiondimanche 12 novembre 2000StatutMembreDernière intervention27 juin 2007
-
27 juin 2007 à 20:16
Bonjour à tous.
J'ai un souci pour obtenir ce que je veux, c'est peut-être tout bête je ne sais plus trop là...
Je souhaite additionner les valeurs d'un COUNT
J'ai 2 tables : themes et questions
quand je fais : $sql_the_ok = mysql_query("select theme, id from `themes` where id_qcm='" . $qcm. "'");
while ($the_ok = mysql_fetch_array($sql_the_ok))
{
foreach( $the_ok as $value )
$sql_the_count = mysql_query("select count(id) as nbre_entree from `questions` where id_qcm='" . $qcm. "' and id_theme = '" . $the_ok[1]. "'");
$the_count = mysql_fetch_array($sql_the_count);
echo "themes n° " . $value . ' : ' . $the_count['nbre_entree'] . ' questions
';
}
themes n° 1 : 6 questions et q : 6
themes n° 2 : 4 questions et q : 10 themes n° 3 : 2 questions et q : 12 themes n° 4 : 2 questions et q : 14
de façon à faire une liste de liens qui passent en GET le numéro du théme et la valeur de q, me renvoyant sur la premiére question de chaque théme
du syle :
[ma_page.php?theme =1&question= 1>mon lien [ma_page.php?theme =3&question=11>mon lien
je me mélange les pinceaux entre COUNT, SUM, et des while imbriqués les uns dans les autres << foireux...
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 27 juin 2007 à 18:12
Hello,
$iHowMany = 10;
$sql_the_ok = mysql_query("select theme, id from `themes` where id_qcm='" . $qcm. "'");
while ($the_ok = mysql_fetch_array($sql_the_ok))
{
foreach( $the_ok as $value )
$sql_the_count = mysql_query("select count(id) as nbre_entree from
`questions` where id_qcm='" . $qcm. "' and id_theme = '" . $the_ok[1].
"'");
$the_count = mysql_fetch_array($sql_the_count);
$iHowMany += $the_count['nbre_entree'];
echo "themes n° " . $value . ' : ' . $the_count['nbre_entree'] . ' questions et a : '.$iHowMany.'
';
}
ceci dit, tu peux raccourcir tout ça hein...SELECT count(q.id) FROM nbre_entree FROM questions q LEFT JOIN themes t ON t.id q.id_theme WHERE id_qcm '$qcm'
jacky quartz
Messages postés19Date d'inscriptiondimanche 12 novembre 2000StatutMembreDernière intervention27 juin 2007 27 juin 2007 à 19:03
On progresse, mais il y a un souci sur l'initialisation puisque j'obtiens :
themes n° 1 : 6 questions et a : 16
themes n° 2 : 4 questions et a : 20
themes n° 50 : 0 questions et a : 20
themes n° 51 : 0 questions et a : 20
themes n° 52 : 0 questions et a : 20
themes n° 53 : 0 questions et a : 20
themes n° 54 : 0 questions et a : 20
themes n° 55 : 0 questions et a : 20
themes n° 56 : 2 questions et a : 22
themes n° 57 : 0 questions et a : 22
themes n° 58 : 2 questions et a : 24
themes n° 60 : 0 questions et a : 24
themes n° 61 : 0 questions et a : 24
themes n° 62 : 0 questions et a : 24
themes n° 63 : 0 questions et a : 24
themes n° 64 : 0 questions et a : 24
Or il me faudrait obtenir :
themes n° 1 : 6 questions et a : 1
themes n° 2 : 4 questions et a : 10
themes n° 50 : 0 questions et a : 10
themes n° 51 : 0 questions et a : 10
themes n° 52 : 0 questions et a : 10
themes n° 53 : 0 questions et a : 10
themes n° 54 : 0 questions et a : 10
themes n° 55 : 0 questions et a : 10
themes n° 56 : 2 questions et a : 12
themes n° 57 : 0 questions et a : 12
themes n° 58 : 2 questions et a : 14
themes n° 60 : 0 questions et a : 14
etc..etc...
Nb1 : certains de mes thèmes sont pour l'instant vides..
Nb2 : je n'ai pas encore testé ta requête synthétique avec les alias et le JOIN LEFT, qui m'a l'air bien puissante
jacky quartz
Messages postés19Date d'inscriptiondimanche 12 novembre 2000StatutMembreDernière intervention27 juin 2007 27 juin 2007 à 20:08
Je viens d'essayer ceci :
$sql_the_ok mysql_query("SELECT count(q.id) as nbre_entree FROM questions q LEFT JOIN themes t ON t.id q.id_theme WHERE id_qcm = '" . $qcm . "'");
$the_ok = mysql_fetch_row($sql_the_ok);
echo $the_ok['nbre_entree'];
et je n'ai aucun résultat....
Ta premiére proposition par contre me renvoit bien ce qu'il y a sur mon post précédent, sans être exactement le résultat escompté..
Une autre idée peut-être
Vous n’avez pas trouvé la réponse que vous recherchez ?