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 :

Option value en mode aléatoire [PHP 5.6]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Homme Profil pro
    HobbyWeb
    Inscrit en
    Janvier 2005
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : HobbyWeb

    Informations forums :
    Inscription : Janvier 2005
    Messages : 183
    Points : 102
    Points
    102
    Par défaut Option value en mode aléatoire
    Bonjour,

    Afin de ne pas utiliser de code captcha dans l'envoi de mon formulaire, j'aimerais opter pour une solution maison, soit avec un select

    pour le moment, j'utilise ceci

    Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <label><strong><font color="red">Que voulez-vous faire ? (obligatoire)</font></strong></label>
     
    <select class="form-control" name="subject" id="subject">
     
    <option value="">Un choix s'impose sur notre menu déroulant</option>
    <option value="">Rien ! Je me promène sur ce site (feinte anti-spam)</option>
    <option value="cestbon">J'aimerais ajouter ce site (Mieux qu'un code captcha illisible)</option>
    <option value="">Ce choix ici ne sert à rien (feinte anti-spam)</option>
     
    </select>

    Je propose 4 questions à choix, il faut donc choisir la 3ème question pour valider l'envoi du formulaire...

    Est-il possible d'afficher ces 4 questions dans un ordre aléatoire ? si oui comment ? (j'ai essayé avec rand en vain...)

    Plus dur si c'est toujours possible...
    Comment éviter que la bonne réponse se trouve en 1ère position d'un affichage aléatoire.

    Merci d'avance pour vos idées
    Bonne soirée
    Yule

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Avec un petit shuffle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $option = array("Un choix s'impose sur notre menu déroulant", "Rien ! Je me promène sur ce site (feinte anti-spam)", "J'aimerais ajouter ce site (Mieux qu'un code captcha illisible)", "Ce choix ici ne sert à rien (feinte anti-spam)");
    $good_answer = $option[2];
     
    shuffle($option);
     
    foreach ($option as $key=>$value) {
       echo '<option value="' . $key . '">' . htmlspecialchars($value) . '</option>';
       if ($value === $good_answer) {
             $good_value = $key;
       }
    }
    Avec ce code, la valeur de la bonne réponse est variable également. Sinon il suffirait de regarder la valeur pour trouver la bonne réponse.
    Il faut donc stocker la bonne valeur ($good_value) en session pour pouvoir la comparer ensuite.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier
    Homme Profil pro
    HobbyWeb
    Inscrit en
    Janvier 2005
    Messages
    183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : HobbyWeb

    Informations forums :
    Inscription : Janvier 2005
    Messages : 183
    Points : 102
    Points
    102
    Par défaut
    Merci je vais regarder ceci...

    J'ai donc opté pour ceci pour le moment

    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
     
    <?php
    $anti1 = "<option value=''>Faut dérouler ce menu pour faire le bon choix (feinte anti-spam)</option>";
    $anti2 = "<option value=''>Rien ! Je me promène sur ce site (feinte anti-spam)</option>";
    $anti3 = "<option value='cestbon'>Ok, j'aimerais ajouter ce site (le bon choix !)</option>";
    $anti4 = "<option value=''>Ce choix ici ne sert à rien (feinte anti-spam)</option>";
     
    $option = array("$anti1", "$anti2", "$anti3", "$anti4");
     
    shuffle($option);
     
    foreach ($option as $value) {
    echo "$value ";
    }
     
    ?>

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Évite quand même les écritures lourdingues.
    A minima fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $option = array(
    	"<option value=''>Faut dérouler ce menu pour faire le bon choix (feinte anti-spam)</option>",
    	"<option value=''>Rien ! Je me promène sur ce site (feinte anti-spam)</option>",
    	"<option value='cestbon'>Ok, j'aimerais ajouter ce site (le bon choix !)</option>",
    	"<option value=''>Ce choix ici ne sert à rien (feinte anti-spam)</option>"
    );
    Et ne mets pas des guillemets partout :
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

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

Discussions similaires

  1. <html:option value="">
    Par eyango dans le forum Struts 1
    Réponses: 3
    Dernier message: 25/02/2008, 17h42
  2. tag <html:option value>
    Par man84 dans le forum Struts 1
    Réponses: 2
    Dernier message: 06/02/2008, 07h01
  3. Réponses: 1
    Dernier message: 06/04/2007, 16h52
  4. Préselection d'options <option value=
    Par jojo33bx dans le forum Langage
    Réponses: 5
    Dernier message: 17/12/2006, 11h24
  5. [Struts]Select, options & value ...
    Par djoukit dans le forum Struts 1
    Réponses: 4
    Dernier message: 01/07/2004, 10h40

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