Création d'un questionnaire test

Résolu
Bonjour,

Voilà je me suis lancé dans la périlleuse mission d'élaborer un questionnaire test du type "politest" (mais dans un autre thème que la politique). J'aimerais savoir comment avec dreamweaver réaliser un questionnaire en plusieurs pages et ensuite traduire ces réponses dans des résultats (comme lorsque l'on fait un test sur un magazine) qui s'afficheraient dans une page web.
Malheureusement sur le net je n'ai pas vu de tutoriaux expliquant le fonctionnement de de ce type questionnaire.
Voilà je pense que la mission est délicate mais je demande votre aide,
Merci d'avance,

7 réponses

Résumé de la discussion

Réaliser un questionnaire multi-pages avec Dreamweaver et PHP et afficher des résultats personnalisés sur une page finale dépend d'un flux de données côté serveur et d'une logique de calcul des réponses. Plusieurs intervenants recommandent d'utiliser PHP pour traiter les formulaires, de transférer les choix entre les pages via des mécanismes tels que POST et les sessions, afin d'alimenter une page de résultats. En pratique, la méthode consiste souvent à démarrer une session, stocker les réponses (R1, R2, etc.) puis afficher un commentaire ou un score personnalisé selon les valeurs sauvegardées. Des exemples évoqués montrent aussi que le choix des réponses peut orienter le type de résultat affiché, ce qui implique d'anticiper la logique de calcul et la présentation côté serveur.

Bobot (l’IA à votre service)
  1. Bonjour

    Cela se fait avec PHP
    Il y a une bonne documentation sur le Site du Zero
    1. J'ai wamp
    2. wamp sait faire fonctionner le PHP
    3. Merci oui c'est d'ailleurs sur le site du Zero où je l'ai téléchargé. Mais comment faire en sorte que je puisse réaliser ce dit questionnaire ?
    4. Il faut suivre le reste du cours pour comprendre le fonctionnement de PHP et pouvoir en faire quelque chose.
    5. J'ai bien appris comment créer avec des codes des cases à cocher ou des boutons mais cela ne m'explique pas comment ces données peuvent âtre traitées pour que le visiteur puisse avoir une réponse...
  2. Bonsoir

    Vous voulez realiser un questionnaire instantané du type quizz avec plusieurs possibilites de reponses et pourvoir l'afficher sur un navigateur, c'est ca?

    Cordialement.
    1. Bonsoir Robin des boitiers. Et merci. Dans un premier temps c'est exactement ça. Et ensuite selon le nombre de points, afficher dans une autre page web un commentaire différent selon le résultat. Mais il ne s'agit pas d'un quizz avec une seule bonne réponse. Il s'agit d'un quizz psycho avec des réponses. Et selon ces réponses, j'aimerais déduire le comportement de la personne. J'espère que j'ai été clair.^^
  3. re

    J'avais utilisé un logiciel pour faire un quizz il y a quelques temps qui s'appelle qwquizz .

    Vous devez pouvoir realiser ce genre de quizz avec une presentation perso avec ce logiciel.

    Cordialement.
    1. Malheureusement ce qui me semble être qw quizz est un logiciel pour créer un quizz avec une ou plusieurs bonnes réponses. Alors que le questionnaire que je désire comporterait plusieurs réponses qui ne sont ni fausses ni vrai mais qui se concluent par un résultat selon les réponses données/
  4. qu'est ce que tu veut exactement !! quel est le type de ce questionnaire
    1. Contributeur
      Bon, attendez > <

      Est-ce que c'est obligatoire de mettre vos formulaire sur des pages différentes ? Pourquoi ne pas mettre (j'ai simplifié le code) :

      <form> 
      <h3>Couleur préférée ?</h3 
      <input type="radio" name="R1" value="Bleu" id="R1_1" />Bleu</label>  
      
      <h3>Votre humeur ?</h3> 
      <input type="radio" name="R2" value="Anxieu" id="R2_1" />Anxieu</label>  
      
      <input type="submit" value="Valider le formulaire" /> 
      </form>


      Tout ça sur une seule même page ? Et ensuite suivant les réponses, on affichera quelque chose correspondant à tout ce qu'on aura récupéré du formulaire.
      1. Merci encore AssassinTourist. Oui bien sûr vous avez raison. Je trouvais ça plus joli en plusieurs pages pour ce que je voulais faire mais commençons par faire plus simple. Oui très bien comme ça.
      2. Contributeur
        On fera en plusieurs pages dans un deuxième temps =)
        Donc là, est-ce que vous arrivez à récupérer les variables $_POST['R1'] et $_POST['R2'] dans cible.php ?
      3. Non je ne comprends pas vraiment... Qu'est-ce je dois mettre dans mon script de cible.php. car j'ai essayé de mettre $nom_recup = $_POST['R1'] $_POST['R2') mais la page s'affiche tel quel
      4. Contributeur
        Oulah oulah, non bien sûr =)

        essayez :
        <?php 
        //On met les valeurs des posts dans des variables
        $r1 = $_POST['R1'];
        $r2 = $_POST['R2'];
        
        //On les affiche comme on veut 
        echo "Ma couleur préférée est  ". $r1 ." et mon humeur est ". $r2;
        ?>
      5. Lol ok ça ça marche...
    2. Contributeur
      Non, vous ne comprenez pas le principe.

      Page1.php
      variable1 que l'utilisateur choisit
      action vers la page2.php

      Page2.php
      on met la variable1 en session => $_SESSION['variable1'] = $_POST['variable1'] (qui vient du formulaire de la page précédente)
      variable2 que l'utilisateur choisit
      action vers page3.php

      Page3.php
      on met la variable2 en session => $_SESSION['variable2'] = $_POST['variable2'] (qui vient du formulaire de la page précédente)
      variable3 que l'utilisateur choisit
      action vers page_resultat.php

      Page_resultat
      on met la variable3 en session => $_SESSION['variable3'] = $_POST['variable3'] (qui vient du formulaire de la page précédente)
      récupération de toutes les variables de session :
      $r1 = $_SESSION['variable1'];
      $r2 = $_SESSION['variable2'];
      $r3 = $_SESSION['variable3'];
      on fait nos if avec les $rX

      Pour afficher une valeur
      Vous n'avez pas vu ce que je vous avais mis ! Faire echo $var1 && $var2, ça ne fonctionnera jamais ! Il faut respecter la syntaxe exacte !
      Je vous dis d'utiliser des echo, c'est pour afficher la valeur, c'est pour vérifier qu'à l'intérieur de $rX, il y a bien ce que vous attendez.
      1. Merci en tout cas pour votre patience étant donné que je me suis lancé là-dedans pour apprendre.
        Alors sur mes deux premières pages dont je vous donne le script ci dessous je pense que tout est correct car avec WAMP je n'ai pas de messages d'erreur. En revanche c'est une autre histoire pour la page résultat
        Voici la page 2.
        </head><?php $_SESSION['R1'] = $_POST['R1']
        ?>
        Quelle est votre humeur ?

        <body>
        <form id="formulaire" name="form1" method="post" action="traitementplusieurspages.php">
        <p>
        <label>
        <input type="radio" name="R2" value="1" id="R2_0" />
        Anxieux</label>
        <br />
        <label>
        <input type="radio" name="R2" value="3" id="R2_1" />
        détendu</label>
        <br />
        <label>
        <input type="radio" name="R2" value="5" id="R2_2" />
        calme</label>
        <br />
        <label>
        <input type="radio" name="R2" value="7" id="R2_3" />
        normal</label>
        <br />
        </p>
        <input name="Validation" type="submit" id="" value="Valider" />

        </form>

        Et voici la page résultat où WAMP m'indique qu'il y a une erreur concernant la ligne $r1 = $_SESSION['R1'] :

        <body>
        <?php
        $_SESSION['R2'] = $_POST['R2']?>
        <?php
        $r1 = $_SESSION['R1'];
        $r2 = $_SESSION['R2']
        ?>
        </body>
      2. Contributeur
        Oh pardon, j'ai oublié qu'il fallait ouvrir sa session !
        Mettez au début de vos pages :
        session_start();


        Et après votre traitement, il serait bien de fermer cette session :
        session_destroy();
      3. Alors sur ma première page en haut, j'ai mis <?php session_start()?> et sur ma dernière page résultat j'ai mis <?php session_destroy()?>
        Mais j'ai toujours le problème. Et il me dit également que j'ai aussi un problème avec la ligne se session_destroy()
      4. Contributeur
        A chaque fois, mettez-les entre les balises <body> et <?php ?> Et il vaut mieux un point virgule.
      5. Toujours le même problème malheureusement. Pourtant j'ai fait plusieurs tentatives. Sur la première page, le début du script :

        <body><?php session_start();?>
        <form id="formulaire" name="form1" method="post" action="page2.php">

        Et sur la dernière, celle du résultat :

        </head>

        <body><?php session_destroy();?>

        <?php
        $_SESSION['R2'] = $_POST['R2']?>
        <?php
        $r1 = $_SESSION['R1'];
        $r2 = $_SESSION['R2']

        ?>
    3. Ca y est assasintourist je crois avoir résolu le problème. J'ai mis un session_start sur l'ensemble de mes trois pages. Je ne sais pas si c'est bien académique mais en testant avec echo, j'ai bien les valeurs de mes deux variables qui s'affichent dans la page résultat.
      1. Contributeur
        Cool =)
      2. Merci en tout cas. Maintenant je vais lire des tutos pour tenter d'additionner les valeurs de mes variables et avoir une réponse "type" pour chaque résultat de l'ensemble de mes variables sur la page finale.
      3. Contributeur
        Si le problème initial a été résolu, serait-il possible de "marquer ce sujet comme étant résolu" ? Juste en-dessous de votre titre =)
      4. D'accord