Le formulaire de contact en php dont vous trouverez le code ci-dessous fonctionne chez un hébergeur gratuit, je transfère mes pages ches un hébergeur payant et là tout fonctionne apparemment bien sur le site : remplir le formulaire, envoyer, page "Merci" mais je ne reçois rien dans ma boite mail.
Quelqu'un a t-il une explication : voir code ci-dessous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145 <?php $email_dest = "monemail@mail.fr"; if ($_POST['envoi']) { $message_remerciement = "Merci"; // E-mail headers: $headers ="MIME-Version: 1.0 \n"; $headers .="From: expéditeur<e-mail>\n"; $headers .="Content-Type: text/html; charset=iso-8859-1 \n"; $subject = "contact"; $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>Assistant d'envoi de formulaires</title> <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") return false } if (mail_form.champ2.value == "") { alert("") return false } if (mail_form.zone_email.value == "") { alert("e-mail") 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 bgcolor="#333333"> <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 color="#FFFFFF" size="1" face="Verdana">Nom</font></td> <td><input name="champ1" type="text"></td> </tr><tr> <td><font color="#FFFFFF" size="1" face="Verdana">Téléphone</font></td> <td><input name="champ2" type="text"></td> </tr><tr> <td width><font color="#FFFFFF" size="1" face="Verdana">E-mail</font></td> <td width><input name="zone_email" type="text"></td> </tr><tr> <td valign="top"><font color="#FFFFFF" size="1" face="Verdana">Message</font></td> <td><textarea name="zone_texte" cols="50" rows="10"></textarea></td> </tr><tr> <td valign="top"><input name="nbre_champs_texte" type="hidden" id="nbre_champs_texte" value="2"> <input name="nbre_zones_texte" type="hidden" value="1"> <input name="nbre_zone_email" type="hidden" value="1"> <input name="titre_champ1" type="hidden" value="Nom"><input name="titre_champ2" type="hidden" value="Téléphone"><input name="titre_email" type="hidden" value="E-mail"><input name="titre_zone" type="hidden" value="Message"></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>







Répondre avec citation
Partager