Résolu Selected d'une option dans une boucle

Solutions (3)
Tags :
  • Selection
  • Select
  • Echo
  • Programmation
|
Bonjour,

Petit soucis de selection... j'ai fais une boucle pour afficher les jours de naissance dans un select comme ceci:

  1. <select name="j_naissance" class="select2">
  2. <?php
  3. for ($i=1; $i<32;$i++) {
  4. echo "<option value=\"$i\">$i</option>";
  5. }
  6. ?>
  7. </select>


Maintenant j'aimerais selectionner l'option par rapport à une variable de session... j'y arrive avec des options dont la valeur est connue, mais pas avec la boucle...

Merci d'avance!
Contenus similaires
  • Autres pages sur : selected option boucle
Meilleure solution
partage
|
  1. <select name="j_naissance" class="select2">
  2. <?php
  3. $jour = $_SESSION['jour'];
  4. for ($i=1; $i<32;$i++) {
  5. if ($i==$jour) echo '<option value="'.$i.'" selected="selected">'.$i.'</option>";
  6. else echo '<option value="'.$i.'">'.$i.'</option>";
  7. }
  8. ?>
  9. </select>

Rien de bien sorcier, tu vois.

  • Commenter cette solution |
Score
0
òh
òi
|
bonjour, mon code ressemble très formtement à celui ci et j'ai ainsi pu le corriger, mais j'ai encore un petit soucis. Quand j'envoie le formulaire qui comporte des erreurs il doit me mémoriser les valeurs choisies par le visiteur pour lui éviter de les retaper.

voici mon code de la page de formulaire: (avec un session_start)
  1. <?php
  2. ?>
  3. <p>Votre date de naissance:</p>
  4. <select name="jnaissance" id ="jnaissance" >
  5. <?php
  6. $_POST['jour']=$_SESSION['form']['jour'];
  7. for ($i=1;$i<=31;$i++) //$i est la "value"
  8. {
  9. if ($i==$_POST['jour']) echo '<option value="'.$i.'" selected="selected">'.$i.'</option>';
  10. else echo '<option value="'.$i.'">'.$i.'</option>';
  11. }
  12. ?>
  13. </select>


et voici le code de traitement de la page de ce formulaire:
  1. <?php
  2. $_SESSION['erreur']='';
  3. $_SESSION['form']='';
  4. ?>
  5. <?php if (isset($_POST['jour']) and !empty($_POST['jour']))
  6. {
  7. $_SESSION['form']['jour']=$_POST['jour'];
  8. }
  9. ?>


pourrier vous m'aider svp?
merci!
  • Commenter cette réponse |
Score
0
òh
òi
|
Et bien merci :) 

J'avais essayer à la base...

  1. if ($_SESSION['j_naissance'] == $i) { $selected=seleted=\"selected\"";}


Mais il me retournais 31...
Soit maintenant ca fonctionne merci crazycat!
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS