[mysql] besoin d'aide pour 2 requetes

bonsoir j'ai besoin d'aide pour 2 requetes

la 1ere

$requete="SELECT * FROM stats where ideleve='$Id-eleve' and $Categorie='1'";

je dois repeter cette requete 14 fois comment faire pour utilisé une boucle for dans ce cas.

la 2e

j'ai une table de stats comme ca

id_question : id_eleve : id_categorie

1 : 1 : 1
2: 1 : 1
3 : 1 : 1
1 : 1 : 1
2: 1 : 1
3 : 1 : 1

dans cette exemple on vois que l'eleve 1 a deja fais les 3 questions de la catégorie mais qu'elle est la requete a faire pour connaitre le nombre de fois que l'exercice 1 a été fais

merci a vous

11 réponses

  1. Slt,

    Pourquoi faire ta requête dans une boucle, ce n'est pas très conseillé en général.

    Tu veux sélectionné quoi exactement dans ta table ?

    Tu veux la mettre dans un for, mais quel id doit-être incrémenté ?
    0
    1. Pour la seconde

      SELECT COUNT(*) FROM stats WHERE id_question=1 AND id_eleve=1


      Tout simplement.
      0
      1. Contributeur
        salut

        pour la 1ere en fait je veux afficher pour l'eleve 1 ces resultats dans la catégorie 1, puis dans la catégorie 2 et ainsi de suite jusqu'a la categorie 14

        pour la 2e je pense pas que ca aille

        je veux savoir combien de fois la série question 1,2 et 3 a été faite
        0
        1. Ah oui, donc faut voir avec le GROUP BY

          Pour la seconde, ça ferait un truc du genre :

          $req= mysql_query($sql) or die (mysql_error());
          
          while( $result = mysql_fetch_array($req) )
          {
              echo ' La question ' . $result['id_question'] . '  a été effectuée => ' . $result['nbr'] . ' fois<br />';
          }


          Pour la 1ère, ce serait un peu près pareil, mais il ne faut pas faire tes requêtes dans une boucle.
          0
          1. Bonjour antic80
            Bon je suis prêt à t'aider, mais sois plus précis dans tes demandes.
            Que veux dire
            "je veux savoir combien de fois la série question 1,2 et 3 a été faite" ?
            La série de questions 1, 2 et 3 ?
            Chaque question ?

            Et ton exemple ne me renseigne pas :
            id_question : id_eleve : id_categorie
            1 : 1 : 1
            2: 1 : 1
            3 : 1 : 1
            1 : 1 : 1
            2: 1 : 1
            3 : 1 : 1

            Mets des valeurs significatives à la place de tous ces 1
            Et en fonction de ces valeurs, donne le résultat que les requêtes doivent retourner.

            Et ces remarques sont valables pour tous tes messages.

            "Ce qui se conçoit bien s'énonce clairement"
            0
            1. Contributeur
              salut et merci pour ton aide

              quand je dis "je veux savoir combien de fois la série question 1,2 et 3 a été faite" ?

              a chaque fois que l'eleve repond a une question le resultat de la question est enregistré dans la table stats

              on enregistre dans cette table a chaque question , le numéro de la question, le numéro de l'eleve, le numéro de l'exercice(catégorie), le nombre d'essai et bonnereponse ou mauvaise reponse

              si l'eleve fais le 1ere exercice completement on devrais retrouver dans la table stats la question 1 la 2 et la 3.

              si l'eleve refais l'exercice on aura a nouveau question 1 ,2 et 3

              mais si l'eleve refais l'exercice et qu'il ne fais que les 2 premieres questions on aura question 1 et 2

              la requete dois donc me dire combien de fois l'exercice a été fais
              ici il a été fais 2 fois car la 3eme fois il n'a pas été fais completement

              pour la 2e requete le but est d'afficher sur la page le nombre de questions de la catégorie 1 puis la 2 puis la 3 etc...

              je veux utilisé une boucle pour eviter d'avoir a faire 20 fois la meme requete.

              voila

              j'en profite aussi ricric pour te parler d'un autre message que j'avais mis

              quand on verifie le resultat d'une question j'aimerai que quand on arrive a la derniere question faire la verification est etre redirigé vers une autre page

              j'ai essayer avec un header mais un message me dis "warning :cannot modify header"

              merci pour ton aide
              0
              1. > quand on verifie le resultat d'une question j'aimerai que quand on arrive a la derniere question faire la verification est etre redirigé vers une autre page
                Puisque tu fais un echo 'Bonne réponse', il faut bien que le visiteur le voit. D'où ma suggestion du lien.
                De toute façon header() doit être fait avant toute autre sortie vers le navigateur et ce sont les echo et print qui provoque l'erreur que tu signales.
                0
                1. Contributeur
                  oui l'utilisateur voit le message mais au bout de 3 sec il reviens sur la feuille question pour répondre a la question suivante donc le lien ne sert a rien

                  maintenant as tu une idée pour les requetes ??
                  0
                  1. Contributeur
                    toujours personnne pour mon soucis
                    0
                    1. Pour la seconde

                      SELECT COUNT(id_question) FROM stats GROUP BY id_categorie
                      0
                      1. Contributeur
                        et comment je peux recuperer le resultat de cette requete , l'afficher en fait
                        0