[mysql] besoin d'aide pour 2 requetes

antic80 Messages postés 4877 Statut Contributeur -  
antic80 Messages postés 4877 Statut Contributeur -
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. Uric
     
    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
  2. Uric
     
    Pour la seconde

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


    Tout simplement.
    0
  3. antic80 Messages postés 4877 Statut Contributeur 1 178
     
    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
  4. Uric
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ricric Messages postés 34 Statut Membre 7
     
    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
  7. antic80 Messages postés 4877 Statut Contributeur 1 178
     
    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
  8. ricric Messages postés 34 Statut Membre 7
     
    > 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
  9. antic80 Messages postés 4877 Statut Contributeur 1 178
     
    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
  10. antic80 Messages postés 4877 Statut Contributeur 1 178
     
    toujours personnne pour mon soucis
    0
  11. ricric Messages postés 34 Statut Membre 7
     
    Pour la seconde

    SELECT COUNT(id_question) FROM stats GROUP BY id_categorie
    0
  12. antic80 Messages postés 4877 Statut Contributeur 1 178
     
    et comment je peux recuperer le resultat de cette requete , l'afficher en fait
    0