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

EDI, CMS, Outils, Scripts et API PHP Discussion :

Création d'un quizz


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Belgique

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2014
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Création d'un quizz
    Bonsoir,

    Débutant en PHP, j'ai comme projet de créer un Quiz. Le but étant que les professeurs insèrent des questions dans une base de donnée SQL et que les étudiants peuvent y répondre en se connectant.

    Voici mon code :

    Je reprends les données de ma base SQL et je les mets dans un formulaire (fonctionnel) mais j'ai des codes d'erreurs quand je recharge la page pour l'insertion des données dans l'array.
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <?php
    $bdd = new PDO('mysql:host=127.0.0.1;dbname=projet', 'root', '');
    $question = $bdd->query('SELECT * FROM question');
    $reponse = array();
    $i = 0;
    while ($donnees = $question->fetch())
    {
    ?>
     
    <p> 
    <strong> Question </strong> <?php echo $donnees['id']; ?> 
    </br>
    <strong> <?php echo $donnees['question']; ?> </strong> </br>
    <?php $choix = $donnees['id']; ?>
    <select name=$choix>
        <option value="1"><?php echo $donnees['q1']; ?></option>
        <option value="2"><?php echo $donnees['q2']; ?></option>
        <option value="3"><?php echo $donnees['q3']; ?></option>
        <option value="4"> Je ne sais pas </option>
    </select>
    <?php 
    $reponse[$i] = $_POST[$choix];
    $i++;
    ?>
    </p>
     
    <?php 
    } 
    ?>
     
    <input type="submit" name="formreponse" value="Confirmer" />
     
    <?php
    $question->closeCursor();
    $insertmbr = $bdd->prepare = "INSERT INTO membre WHERE id = '1' 
    (q1,q2,q3,q4,q5,q6,q7,q8,q9,q10) VALUES (? , ? , ?, ?, ?, ?, ?, ?, ?, ?)";
    $insertmbr->execute(array($reponse[0], $reponse[1], $reponse[2], $reponse[3], $reponse[4], $reponse[5], $reponse[6], $reponse[7], $reponse[8], $reponse[9]));
    ?>
    Nom : erreur php2.PNG
Affichages : 1332
Taille : 27,2 KoNom : erreur php.PNG
Affichages : 1583
Taille : 56,0 Ko

    Si vous avez des idées, je vous serai reconnaissant

    Merci à vous,

    Bonne journée !

  2. #2
    Modérateur
    Avatar de kolodz
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    2 211
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 211
    Points : 8 316
    Points
    8 316
    Billets dans le blog
    52
    Par défaut
    Bonjour,

    La variable $_POST n'est remplit que si l'utilisateur a soumit un formulaire en mode POST.
    Ce qui n'est probablement pas le cas lors de l'affichage de ton formulaire

    Dans ton cas tu dois faire de la programmation "défensive", c'est à dire vérifier que tu as bien ce que tu pense avoir avant de l'utiliser.

    Déjà vérifie si tu as des informations soumis en mode POST :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (!empty($_POST))
    {
        //Utilisation de la variable POST
    }
    En suite vérifie que ce que tu veux accéder existe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if (isset($_POST['MaCle']) )
    {
        // Utilisation de la valeur associé à ma clé.
    }
    ]
    Sinon pense que tu peux afficher le contenu d'une variable via :
    Documentation :

    http://php.net/manual/fr/function.empty.php
    http://php.net/manual/fr/function.isset.php
    http://php.net/manual/fr/function.var-dump.php

    Cordialement,
    Patrick Kolodziejczyk.
    Si une réponse vous a été utile pensez à
    Si vous avez eu la réponse à votre question, marquez votre discussion
    Pensez aux FAQs et aux tutoriels et cours.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2014
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Belgique

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2014
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci pour votre conseil ! Je vais tester tous cela prochainement, je vous tiendrai au courant de mon avancée dès que j'ai le temps ! Encore merci pour votre réponse,

    Cordialement,

    Maxence DE VOS

Discussions similaires

  1. [Ant] [Ejb] Probléme de création d'ejb avec Genic
    Par rivierem dans le forum JOnAS
    Réponses: 7
    Dernier message: 25/06/2004, 16h21
  2. Réponses: 7
    Dernier message: 16/06/2004, 15h02
  3. Problème de création de table sous MySql
    Par ducamba dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/06/2003, 09h59
  4. Problème de création de fenêtre
    Par tomateauketchup dans le forum DirectX
    Réponses: 1
    Dernier message: 08/06/2003, 19h42
  5. [Rave Report] problème de création dynamique
    Par Nivux dans le forum Rave
    Réponses: 2
    Dernier message: 24/05/2003, 00h07

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