Formulaire PHP

pat'' Messages postés 4 Statut Membre -  
 guy2mars -
Bonjours tout le monde,
J'utilise un formulaire pour inscire les membres d'un club à des compétitions. Le formulaire marche à merveille, cépendant j'voudrais savoir comment faire pour que la personne qui rempli ce formulaire reçoive la même chose (à titre de confirmation) que moi sur son adresse mail qu'elle a saisie dans le champ "email". Voici le code:
<?php

$email_dest = "xxx";
  


if ($_POST['envoi']) {

$message_remerciement = "Félicitation, votre inscription à bien été enregistrée. Cliquez sur la bannière du haut pour retourner à la page d'accueil";

// E-mail headers:
$headers ="MIME-Version: 1.0 \n";
$headers .="xxx \n";
$headers .="Content-Type: text/html; charset=iso-8859-1 \n";

$subject = "Inscription à une course";

$partie_entete = "<html><head>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>";

for ($a=1; $a<= $_POST['nbre_champs_texte']; $a++) {
$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_champ'.$a] . " = " . $_POST['champ'.$a] . "</font><br>";
}

if ($_POST['nbre_zone_email'] != 0) {
$partie_zone_email = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_email'] . " = " . $_POST['zone_email'] . "</font><br>";
}

if ($_POST['nbre_zones_texte'] != 0) {
$partie_zone_texte = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_texte'] . "</font><br>";
$partie_zone_texte = stripslashes($partie_zone_texte);
}

$fin = "</body></html>";

$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_zone_texte . $fin;

// Send the e-mail
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} // Closing if !mail...

} // Closing if edit
?><html>
<head>
<title>Inscription coursetitle>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"><!-- Hide script from older browsers
function verifSelection() {if (mail_form.champ1.value == "") {
alert("Nom non rempli")
return false
} if (mail_form.champ2.value == "") {
alert("Prénom non rempli")
return false
} if (mail_form.champ3.value == "") {
alert("Discipline non rempli")
return false
} if (mail_form.champ4.value == "") {
alert("choix de la course non rempli")
return false
} if (mail_form.zone_email.value == "") {
alert("adresse mail non rempli")
return false
}

invalidChars = " /:,;'"

for (i=0; i<invalidChars.length; i++) {	// does it contain any invalid characters?
badChar = invalidChars.charAt(i)

if (mail_form.zone_email.value.indexOf(badChar,0) > -1) {
alert("Votre adresse e-mail contient des caractères invalides. Veuillez vérifier.")
mail_form.zone_email.focus()
return false
}
}

atPos = mail_form.zone_email.value.indexOf("@",1)			// there must be one "@" symbol
if (atPos == -1) {
alert('Votre adresse e-mail ne contient pas le signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}

if (mail_form.zone_email.value.indexOf("@",atPos+1) != -1) {	// and only one "@" symbol
alert('Il ne doit y avoir qu\'un signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}

periodPos = mail_form.zone_email.value.indexOf(".",atPos)

if (periodPos == -1) {					// and at least one "." after the "@"
alert('Vous avez oublié le point "." après le signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}

if (periodPos+3 > mail_form.zone_email.value.length)	{		// must be at least 2 characters after the 
alert('Il doit y avoir au moins deux caractères après le signe ".". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}} // Fin de la fonction

</script>
</head>

<body>
<form name="mail_form" method="post" action="<?=$PHP_SELF?>" onSubmit="return verifSelection()">
  <div align="center"></div>
<p align="center">
<?php
if ($message_remerciement) {
echo("<font face=Verdana size=2>");
echo(stripslashes($message_remerciement));
echo("</p></body></html>");
exit();
}
?>
  <table width="566" border="0" align="center">
<p align="center">
</p><tr>
      <td><font face="Verdana" size="2">Nom</font></td>
      <td><input name="champ1" type="text"></td>
    </tr><tr>
      <td><font face="Verdana" size="2">Prénom</font></td>
      <td><input name="champ2" type="text"></td>
    </tr><TR>
	<TD><font face="Verdana" size="2">Discipline</font></TD>
	<TD>
	<SELECT name="champ3" type="text">
		   <OPTION VALUE="20 pouces">20 pouces</option>
   <OPTION VALUE="24 pouces">24 pouces</option>
   <OPTION VALUE="20 et 24 pouces">20 et 24 pouces</option>
   </select></TD>

<TR>
	<TD><font face="Verdana" size="2">Choix de la course</font></TD>
	<TD>
	<SELECT name="champ4" type="text">
		   <OPTION VALUE="Caen 26 et 27 février 2011">Caen 26 et 27 février 2011</option>
   <OPTION VALUE="Troyes 06 mars 2011">Troyes 06 mars 2011</option>
   <OPTION VALUE="Troyes 06 mars 2011 + open du samedi">Troyes 06 mars 2011 + open du samedi</option>
   <OPTION VALUE="Besançon 13 mars 2011">Besançon 13 mars 2011</option>
   <OPTION VALUE="Carpentras 19 et 20 mars 2011">Carpentras 19 et 20 mars 2011</option>
   <OPTION VALUE="Tavaux 27 mars 2011">tavaux 27 mars 2011</option>
   <OPTION VALUE="Compiègne 2 et 3 avril 2011">Compiègne 2 et 3 avril 2011</option>
   <OPTION VALUE="Cernay 10 avril 2011">Cernay 10 avril 2011</option>
   <OPTION VALUE="Mours 16 et 17 avril 2011">Mours 16 et 17 avril 2011</option>
   <OPTION VALUE="Weiterstadt 23 avril 2011">Weiterstadt 23 avril 2011</option>
   <OPTION VALUE="Bettancourt 24 avril 2011">Bettancourt 24 avril 2011</option>
   <OPTION VALUE="Joue les Tours 30 avril et 01 mai 2011">Joue les Tours 30 avril et 01 mai 2011</option>
   <OPTION VALUE="Prague 07 mai 2011">Prague 07 mai 2011</option>
   <OPTION VALUE="St-Avold 08 mai 2011">St-Avold 08 mai 2011</option>
   <OPTION VALUE="Chapelle St Mesmin 14 et 15 mai 2011">Chapelle St Mesmin 14 et 15 mai 2011</option>
   <OPTION VALUE="Marseille 21 et 22 mai 2011">Marseille 21 et 22 mai 2011</option>
   <OPTION VALUE="Messigny et Vantoux 29 mai 2011">Messigny et Vantoux 29 mai 2011</option>
   <OPTION VALUE="Saulon 02 juin 2011">Saulon 02 juin 2011</option>
   <OPTION VALUE="Winterthur 04 juin 2011">Winterthur 04 juin 2011</option>
   <OPTION VALUE="Dijon 05 juin 2011">Dijon 05 juin 2011</option>
   <OPTION VALUE="Beaune 11 et 12 juin 2011">Beaune 11 et 12 juin 2011</option>
   <OPTION VALUE="Birmingham 18 juin 2011">Birmingham 18 juin 2011</option>
   <OPTION VALUE="Vesoul 19 juin 2011">Vesoul 19 juin 2011</option>
   <OPTION VALUE="Saintes 25 et 26 juin 2011">Saintes 25 et 26 juin 2011</option>
   <OPTION VALUE="Mandeure 01, 02 et 03 juillet 2011">Mandeure 01, 02 et 03 juillet 2011</option>
   <OPTION VALUE="Haaksbergen 07,08,09 et 10 juillet 2011">Haaksbergen 07,08,09 et 10 juillet 2011</option>
   <OPTION VALUE="Copenhague 28,29,30 et 31 juillet 2011">Copenhague 28,29,30 et 31 juillet 2011</option>
   <OPTION VALUE="Troyes 11 septembre 2011">Troyes 11 septembre 2011</option>
   <OPTION VALUE="Bettancourt 25 septembre 2011">Bettancourt 25 septembre 2011</option>
   <OPTION VALUE="Couvrot 02 octobre 2011">Couvrot 02 octobre 2011</option>
   <OPTION VALUE="Cornimont 16 octobre 2011">Cornimont 16 octobre 2011</option>
	</SELECT>
	</TD>
</TR>
<tr>
      <td width><font face="Verdana" size="2">Adresse e-mail</font></td>
      <td width><input name="zone_email" type="text"></td>
    </tr><tr>
      <td valign="top"><input name="nbre_champs_texte" type="hidden" id="nbre_champs_texte" value="4">
        <input name="nbre_zones_texte" type="hidden" value="0">
<input name="nbre_zone_email" type="hidden" value="1">
<input name="titre_champ1" type="hidden" value="Nom"><input name="titre_champ2" type="hidden" value="Prénom"><input name="titre_champ3" type="hidden" value="Discipline"><input name="titre_champ4" type="hidden" value="Choix de la course"><input name="titre_email" type="hidden" value="Adresse e-mail"></td>
      <td><div align="center">
<input type="reset" name="Reset" value="Effacer">          
<input type="submit" name="envoi" value="Envoyer">
        </div></td>
    </tr>
  </table>
  <div align="center"></div>
</form>
</body>
</html></div>

Merci de votre aide
A voir également:

2 réponses

le_joker_fou Messages postés 765 Date d'inscription   Statut Membre Dernière intervention   239
 
Il te suffit d'utiliser la fonction mail une seconde fois ou le seul argument qui change sera l'adresse mail.
0
pat'' Messages postés 4 Statut Membre
 
salut, merci pour ta réponse mais ça ne m'aide aps trop, moi ce que je veux savoir c'est quel code utiliser pour que le mail soit envoyer à l'adresse saisie dans le champ e-mail.?
0
guy2mars
 
salut
j avais fait ca y a qq années . voici mon code
/* destinataire */

$recipient .= " <".$email.">".", " ; //remarquez les virgules

$recipient .= "postmaster@monsite.net";

/* sujet */

$subject = "Accuse de Reception de ton inscription";

/* message */

$message .= "Cher(e) ".$Pseudo."\n";

$message .= "Ton inscription a notre rencontre a bien ete prise en compte\n";

$message .= "Nous te rappelons que notre rencontre ne peut avoir lieu qu'avec le serieux de tous.\n";

$message .= "Les desistements doivent etre donc n'etre qu'exception.\n";

$message .= "Nous te remercions de ta participation\n";

/* D'autres en-têtes : errors, From cc's, bcc's, etc */

$headers .= "From: <postmaster@monsite.net>\n";

$headers .= "X-Sender: <postmaster@monsite.net>\n";

$headers .= "X-Mailer: PHP\n"; // maileur

$headers .= "X-Priority: 1\n"; // Message urgent!

$headers .= "Return-Path: <postmaster@monsite.net>\n"; // Re-chemin de retour pour les erreurs

$headers .= "Content-Type: text/html; charset=iso-8859-1\n" ;// Type MIME

$headers .= "Cc:\n"; // Champs CC guy.gant@wanadoo.fr

$headers .= "Bcc:"; // Champs BCCsautre.gant@wanadoo.fr, passur@hotmail.com

/* et hop, à la poste */

mail($recipient, $subject, $message, $headers);

et ca marchait bien...
suffit de récupérer tes variables pour personnaliser
@+
0