récupérer une valeur dans un menu déroulant

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : récupérer une valeur dans un menu déroulant

par ladybuuug » 22 août 2005, 14:09

Bien j'ai trouvé mon erreur, alors je donne la solution pour ceux qui auraient le même problème que moi.

à la place de mettre : $mois == $mois_select
il faut mettre : $mois[$i] == $mois_select

voilà c'est tout !

par ladybuuug » 19 août 2005, 02:43

Finalement j'ai réussis ! merci beaucoup. Par contre je n'arrive pas à y adapter avec les menus déroulants ayant du texte



Sans le code ajouté
<select name='moisdenaissance' class='textfield' id='moisdenaissance'><option>\n";
	
$mois = array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre");
	$i = 0; 
while ($i  < count($mois)) 
{echo "<option $check>".$mois[$i]; $i++;}
	echo "</select></option>&nbsp;
 
Ce que j'ai tenté de faire
<select name='moisdenaissance' class='textfield' id='moisdenaissance'><option>\n";
$mois_select=$moism;	
$mois = array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre");
	$i = 0; 
while ($i  < count($mois)) 
if ($mois == $mois_select) { 
            $check="selected"; 
        }else{ 
            $check=""; 
        } 
 echo "<option $check>".$mois[$i];"</option>"; 
       $i++; 
    } 
echo "</select>"; 
   

par ladybuuuug » 18 août 2005, 13:51

bee ça ne marche pas, j'ai bien suivis comme tu m'asconseillé de faire mais cela ne change rien :'(

par @rthur » 18 août 2005, 08:32

Bonjour, voila ce que ça doit donner:
// on suppose que tu mets dans la variable $jour_select le jour à sélectionner, je mets 15 ici pour l'exemple
$jour_select="15";

print "<select name='jourdenaissance' class='textfield' id='jourdenaissance'>\n";

   $jour = 1;
   while ($jour <= 31) {
        if ($jour == $jour_select) {
            $check="selected";
        }else{
            $check="";
        }
        echo "<option $check>$jour</option>";
        $jour++;
    }
   echo "</select>";
J'ai laissé le while afin de conserver ta façon de coder, mais une boucle avec un for serait parfaitement approprié ici vu que le nombre d'itération dans la boucle est connu à l'avance.

par ladybuuug » 18 août 2005, 03:04

oui oui la boucle est fermée, j'ai juste oublié le option.
En fait lorsque le membre souhaitera modifier ses informations, sur la page je souhaiterais que les valeurs qu'il a déjà inséré lors de son inscription soit affichée par exemple :

Code : Tout sélectionner

$prenomm=htmlentities($row['prenom']); Prénom * : <input name='prenom_ins' type='text' id='prenom_ins' value='$prenomm'><br>
ainsi il ne sera pas obligé de retaper à chaque fois son prénom

Sauf que je voudrais faire de même pour les menus déroulants et que lors que j'essaie de faire un option select ça bug :'(... on m'a expliqué qu'il fallait faire un if select bla bla mais le bug persiste

mouais...

par etycia » 18 août 2005, 02:25

tu peux expliciter un peu parce que ce n'est pas super clair...
tu pré remplie un formulaire, c'est ca??
Dans tous les cas tu doit fermer ta balise <option> dans ta boucle je pense.

récupérer une valeur dans un menu déroulant

par ladybuug » 18 août 2005, 02:16

Voilà j'ai un espace membres où on peut modifier sa fiche perso. Pour éviter que la personne ait tout à se retaper, je fais $pseudom, etc.

Sauf que dans les menu déroulants, la valeur se met entre chaque réponses

Code : Tout sélectionner

<select name='jourdenaissance' class='textfield' id='jourdenaissance'><option>\n"; $jour = 1; while ($jour <= 31) {echo "<option $check>$jour"; $jour++;} echo "</select>