PHP: Demande les valeurs d'un formulaire HTML dans la liste déroulante
J'ai un formulaire HTML qui est à l'aide d'un simple PHP mail()
script pour envoyer son contenu à une adresse e-mail. J'ai juste mis en place une liste déroulante:
<select name="event">
<option name="event1" value="event1">Event 1</option>
<option name="event2" value="event2">Event 2</option>
<option name="event3" value="event3">Event 3</option>
</select>
Mais je suis mal à trouver un moyen pour envoyer l'élément choisi via mail()
J'ai essayé d'utiliser le nom de l'élément select:
$event= $_REQUEST['event'] ;
et le nom de l'option éléments:
$event1= $_REQUEST['event1'] ;
$event2= $_REQUEST['event2'] ;
$event3= $_REQUEST['event3'] ;
Mais ce ne semble pas fonctionner pour moi. Quelqu'un sait-il de la bonne façon de récupérer et d'envoyer des informations via la liste de sélection? Grâce
- sélectionnez uniquement a un nom pas les options
$event = $_REQUEST['event'];
devrait fonctionner, je ne sais pas pourquoi cela ne fonctionne pas pour vous. Est-il plus d'informations, vous pouvez fournir?- Les réponses ci-dessous sont correctes. Il semble qu'il n'était pas de travail pour moi comme je l'avais noms pour le sélectionner et de l'option éléments en même temps - ne semble pas comme ça
Vous devez vous connecter pour publier un commentaire.
Les utiliser pour votre formulaire html:
Et l'utiliser sur votre page php que votre formulaire soumet à:
ou
Chaque élément option de ne pas obtenir son propre nom, juste une valeur.
Source: http://www.w3.org/TR/html401/interact/forms.html#h-17.6
Supprimer la
name
attribut de votre option éléments:Et selon la méthode utilisée (
post
ouget
) de votre élément de formulaire, vous devez utiliser:ou
N'oubliez pas d'utiliser htmlspecialchars() ou mysqli_real_escape_string() en cas d'enregistrement dans une base de données ou l'impression à l'utilisateur, en plus d'utiliser mail().