Les Allergies
Alimentaires
Posez votre question Signaler

Variable placé aléatoirement radio bouton php

Mickael86480 119Messages postés 28 mai 2010Date d'inscription 27 mai 2012Dernière intervention - Dernière réponse le 17 sept. 2011 à 19:24
Bonjour, je dois mettre en place un quizz, pour cela j'ai mis en place des radio bouton pour les réponses. Un seul des 4 radio bouton doit être la bonne réponse. Cette bonne réponse doit être placée de façon aléatoire pour que l'utilisateur n'est pas l'habitude de son emplacement.
j'espère être assez clair
merci de votre aide
Lire la suite 

Variable placé aléatoirement radio bouton php »

6 réponses
Réponse
+0
moins plus
Cela fait plusieurs mois que j'ai posté ce message, personne peut m'aider??
Mickael86480- 16 sept. 2011 à 21:10
Personne ne peut m'aider??
__construct - 16 sept. 2011 à 21:54
Bonsoir,
-----------------------------------------------------------------------------------------------------------------------------
Un seul des 4 radio bouton doit être la bonne réponse. Cette bonne réponse doit être placée de façon aléatoire pour que l'utilisateur n'est pas l'habitude de son emplacement.
-----------------------------------------------------------------------------------------------------------------------------
Quelle bonne idée de placer une bonne réponse aléatoirement sur un bouton radio! Suffit de jeter un oeil dans le code source pour savoir quel est le bouton que je dois cocher...
C'est dans ton script PHP qu'il faut mélanger aléatoirement la bonne réponse sinon ça n'a aucun sens ton truc!
Mickael86480- 16 sept. 2011 à 22:35
Ok désolé mais je débute en prog, il n'y a donc aucun moyen de mettre la valeur d'un radio bouton au hasard?
Ajouter un commentaire
Réponse
+0
moins plus
Pour reprendre ce qu'a pu dire "construct", c'est que la validation de la réponse doit effectivement se trouver coté serveur, pour qu'en effet, le petit malin ne puisse pas trouver la réponse dans le code source.

Maintenant, si on sépare la partie présentation et la partie vérification et qu'on fait tout ça en php, tu devrait pouvoir faire quelque chose comme cela (non optimisé et juste pour donner une piste parmi tant d'autres)

//création de la question, d'une array contenant les réponses et la bonne réponse à la question
var $question = "Quelle est la capital de la France ?";
var $reponses = array("Paris","Marseille","Lille","Bordeaux");
var $solution = "Paris";

echo "<form action='' method='post' />
//on melange les élement de l'array : voir php.net pour la fonction shuffle
if(shuffle($reponses))
{
    foreach($reponses as $value)
    {
        echo <input type="radio" name="reponses" value='$value'/>";
    }
}

echo "<input type='submit' value='Valider' />";
echo "</form>";


Ensuite, lorsque tu soumet ton formulaire, il te reste à récupérer la valeur sélectionner par l'utilisateur et tu peux la comparer avec la solution.
Avec le 'shuffle' ton array de réponses sera toujours mélangée aléatoirement.

Ce n'est pas ce qui se fait de mieux mais sa devrait être fonctionnel.

ps : code non testé, des erreurs peuvent être cachées.
Ajouter un commentaire
Réponse
+0
moins plus
Merci a vous deux, problème résolu. C'est vrai rodoplop il y avait quelque erreur, voici pour ceux qui aurai le même problème que moi le code que j'ai corrigé et qui fonctionne:

$reponses = array(''.$data['nom_pays'].'',''.$data1['nom_pays'].'',''.$data2['nom_pays'].'',''.$data3['nom_pays'].'');
$solution = ''.$data['nom_pays'].'';

echo'<center><img src=img/drapeau/'.$data['id'].'.png border=2 ></center><br><br>';

if(shuffle($reponses))
{
foreach($reponses as $value)
{
echo '<center><input type="radio" name="reponses" value='.$value.'>'.$value.'</center><br>';
}
}
Ajouter un commentaire
Ce document intitulé « variable placé aléatoirement radio bouton php » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?