Formulaire HTML

Silvestia -  
Titial69 Messages postés 269 Statut Membre -
Bonjour,

J'essaie de crée un formulaire renvoyant une série de donnée vers une adresse courriel, mais pour une raison qui m'échappe il ne semble pas vouloir l'expédier, voici le code du formulaire en question :

<form action="mailto:fi_animation@hotmail.com" method="post" enctype="text/plain">
Nom:<input type=text name="nom" size="20" maxlength="50"><br>

Prénom:<input type=text name="Prenom" size="20" maxlength="50"><br>

Nom du personnage:<input type=text name="nomp" size="20" maxlength="50"><br>

Adresse courriel:<input type=text name="email" size="20" maxlength="50"><br>

Année de naissance:<table border=0 cellspacing=0><tr><td><select name="jour" size="1"><option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
<option>11</option>
<option>12</option>
<option>13</option>
<option>14</option>
<option>15</option>
<option>16</option>
<option>17</option>
<option>18</option>
<option>19</option>
<option>20</option>
<option>21</option>
<option>22</option>
<option>23</option>
<option>24</option>
<option>25</option>
<option>26</option>
<option>27</option>
<option>28</option>
<option>29</option>
<option>30</option>
<option>31</option>
</select></td><td>

<select name="mois"size="1">
<option>janvier</option>
<option>fevrier</option>
<option>Mars</option>
<option>avril</option>
<option>mai</option>
<option>juin</option>
<option>juillet</option>
<option>août</option>
<option>septembre</option>
<option>octobre</option>
<option>novembre</option>
<option>décembre</option>
</select></td><td>
<input type=text name="annee" size="4" maxlenght="4"></td></tr>
</table>

<input type="submit" value="Envoyer">
<input type="reset" value="Effacer">
</form>

Mais la page ne m'envoie pas la formulaire a l'adresse demander, est-ce qu'il manque quelque chose que j'aurais oublié de prendre en compte ?

Merci.

1 réponse

Titial69 Messages postés 269 Statut Membre 20
 
Il faudrait que tu passe par un peu de code php car ton action="mailto:..." va avoir du mal à marcher si l'utilisateur n'a pas de client mail par défaut sur son ordi (par exemple le formulaire va essayer d'envoyer ces infos via l'outlook de l'utilisateur, je ne pense pas que ce soit très apprécié par tout le monde).

Si tu es hébergé et que tu as la fonction mail() avec ton hébergegemnt, tu peux utiliser ce script qui envera le mail depuis ton sans passer par le clien mail de l'utilisateur :

Exemple, ta page de ton formulaire s'appele formulaire.php
<html>
<head></head>
<body>
<?php
if (isset($_GET['envoi']))
{
$nom =$_POST['nom'];

 //On rempli l'entete du mail
             $headers ='From: "Moi"<monsite@monsite.com>'."\\n";
             $headers .='Reply-To: mailretour@monsite.com'."\\n"; 
             $headers .='Content-Type: text/plain; charset="iso-8859-1"'."\\n"; 
             $headers .='Content-Transfer-Encoding: 8bit'; 
        
                 // On envoie le mail
                 if(mail('emailenvoi@monsite.com','Formulaire rempli','Nom :  '.$nom."\\n", $headers))
                 { 
                  echo 'Le message a bien été envoyé'; 
                 } 
                 else 
                 { 
                      echo 'Le message n\'a pu être envoyé merci de nous contacter directement par mail ou par téléphone...'; 
                 } 

}

?>


<form method="post" action="formulaire.php?envoi">
Votre nom : <input type="text" name="nom" />
<input type="submit" value="Envoyer" />
</form>



Remarque : remplacer le "\\n" par un simple antislash+n (le site ici les suprrime quand j'en met qu'un)
1