IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

PHP Problème Switch


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 217
    Points : 90
    Points
    90
    Par défaut PHP Problème Switch
    Bonjour à tous!

    Voilà, je développe un QCM et j'ai un petit problème avec un switch.

    Voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    if(isset($_POST['enrquest'])){
           $goodrep="";
           switch($_POST['goodrep']){
            case1:
            $goodrep=="1";
            break;
            case2:
            $goodrep=="2";
            break;
            case3:
            $goodrep=="3";
            break;
            case4:
            $goodrep=="4";
            break;
           }
    Le problème est
    Parse error: parse error, expecting `T_CASE' or `T_DEFAULT' or `'}'' in c:\program files\easyphp1-8\www\projet qcm\newquestion.php on line 18
    La ligne 18 étant celle du case1.

    Serait-ce un problème de syntaxe?

    Merci!

  2. #2
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    ca serait plutot

  3. #3
    Membre actif
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Points : 282
    Points
    282
    Par défaut
    C'est quoi l'intérêt de faire un switch pour avoir la mm valeur en entrée et en sortie?

  4. #4
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    223
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 223
    Points : 401
    Points
    401
    Par défaut
    Et en plus de ce qu'a dit koopajah, ce serait peut être plutôt une affectation qu'une comparaison que tu veux faire dans chaque switch.
    Mais comme l'a fait remarqué trihanhcie, quel est l'intérêt de mettre "1" dans $goodrep si $goodrep est déjà égal à "1" ?

  5. #5
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt..

    ce que koopajah voulait dire, c´est que ta syntaxe n´est pas correcte...


    et t´as pas un = en trop?

  6. #6
    Membre actif
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Points : 282
    Points
    282
    Par défaut
    lol ouais j'avais pas fait gaffe à l'autre erreur :p

    Donc il y a 2 erreurs
    C'est bien

    et apres si tu veux faire une affectation c'est
    Je pense que tu m'as compris Pat_AfterMoon mais mal exprimé
    C'est plutot à quoi te sert de créer une variable $goodrep qui a exactement la même valeur que $_POST['enrquest']? Tu peux directement utiliser la variable $_POST['enrquest'] ds ta page non?

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 217
    Points : 90
    Points
    90
    Par défaut
    Cela marche, merci! En effet "case 1" et non "case1" .

    En fait, c'est parce que ce sont les élèves qui enregistrent eux-même les questions, et là, c'est la phase où ils enregistrent leurs questions, pour savoir quelle réponse est la bonne...


    Sinon, comment faire pour selectionner 50 questions dans la base qui en contient beacoup plus, au hasard, et sans qui y est de doublons dans ces 50?

    Il y aurait bien rand() mais cela va t'il empêcher les doubles questions?

  8. #8
    Membre actif
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Points : 282
    Points
    282
    Par défaut
    C'est à dire?

    Les élèves enregistrent la question et la réponse et derriere t'as une bdd qui garde question / réponse?

    Sinon, comment faire pour selectionner 50 questions dans la base qui en contient beacoup plus, au hasard, et sans qui y est de doublons dans ces 50?
    Heu j'ai envie de dire essaie de tout faire en sql... Si je raconte pas de bêtises, il me semble qu'il y a une fonction rand en sql

    Je verrai qq chose comme :
    select distinct(champ) from table order by rand() limit 50
    Pas sur de ma requete :p

  9. #9
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 217
    Points : 90
    Points
    90
    Par défaut
    Oui les élèves entrent des questions chacuns, avec la question, et 4 reponses possibles dont une 1 bonne pour chaque question.

  10. #10
    Membre averti Avatar de jota5450
    Inscrit en
    Janvier 2006
    Messages
    263
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Janvier 2006
    Messages : 263
    Points : 332
    Points
    332
    Par défaut
    slt...

    je confirme le code de trihanhcie ...

    mais si le champ est la clef primaire de la table, il n´est pas necessaire d´avoir le distinct.

  11. #11
    Membre actif
    Inscrit en
    Février 2006
    Messages
    522
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 522
    Points : 282
    Points
    282
    Par défaut
    J'ai encore 1 peu de mal à saisir en fait ce que tu cherches à faire snaxisnake avec les cases...

    J'ai compris ca comme ca : En gros t'as une page avec champ texte où l'élève rempli la question et 4 bouton radio (ou qq chose dans le genre) désignant les réponses. L'élève doit remplir le champs, écrire 4 réponses dont 1 est la bonne. Ensuite les infos sont stockées dans une bdd.

    Si c'est le cas, ton switch sert à rien... Au moment où l'élève poste la page, tu fais direct le insert dans ta base puisque la bonne réponse sera choisie/cochée (et la valeur contenue dans ta variable post)


    Pour la requete sql, ce serait plutot par intitulé de question je suppose donc ce ne serait pas la clé primaire ^^

  12. #12
    Membre régulier
    Homme Profil pro
    Inscrit en
    Février 2006
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 217
    Points : 90
    Points
    90
    Par défaut
    Oui c'est exactement cela, l'élève entre la question, et 4 réponses (1 bonne et 3 fausses), et la bonne est selectionnée par bouton radio.

    Le principe est que chaque élèves entrent une trentaine de questions sur un sujet donnée (histoire par exemple). Multiplié par le Nb d'élèves ce qui donnent un nombre considérable de questions.

    Ensuite, je bloques l'insertion de question, et je fais une évaluation sur le sujet, avec des questions qui tombent aux hasard sur toute la base. C'est pour cela que j'ai mis le case, car il me faut les bonneset mauvaises réponses.

    Au final, ils se font leurs QCM tout seul, le type d'apprentissage via PC leurs convient , 0 papier , et moi, je glande

    Merci pour les réponses, je test la requête demain.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PHP 5.2] Problème SWITCH PHP
    Par Sprsrini dans le forum Langage
    Réponses: 2
    Dernier message: 14/10/2009, 10h10
  2. [Lotus Notes 6 - PHP] Problème requête
    Par Ben42 dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 28/02/2006, 15h02
  3. [SQL-Server] ms sql server et php : problème avec les caractères accentués
    Par stephane9422 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 05/12/2005, 17h45
  4. [ postgresql - php ] problèmes de connexion a une base
    Par diableblanc dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 12/07/2005, 19h27
  5. [PHP]problème avec strftime()...
    Par sanosuke85 dans le forum Langage
    Réponses: 5
    Dernier message: 26/05/2005, 10h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo