Salut,
Je viens demander de l'aide car je n'arrive pas à éradiquer les SPAM qui remplissent mon formulaire de contact.
Comme vous le verrez, j'ai mis en place une fonction verifform() pour :
- vérifier que la réponse au captcha a été bien remplie (3+2=5)
- vérifier que le champ caché en display:none n'a pas été rempli (si celui-ci est rempli, c'est que c'est un robot et non un humain!).
Depuis, je reçois encore des formulaires SPAM, mais cette fois les champs sont complétements vides....
Que faire ?
Merci !
Voici la page du formulaire :
Voici la page de validation du formulaire :
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Formulaire</title> <!--[if lte IE 7]> <link type="text/css" rel="stylesheet" href="css/style-ie.css" /> <![endif]--> <link href="css/style.css" rel="stylesheet" type="text/css" media="screen" /> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> <script type="text/javascript" src="js/shadowbox.js"></script> <script src="js/swfobject_modified.js" type="text/javascript"></script> <script type='text/javascript' language='javascript' src='js/disclaimer.js'></script> <script type="text/javascript"> </script> <script type="text/javascript"> <! CI-DESSOUS LA FONCTION POUR VÉRIFIER LES CHAMPS DU FORMULAIRE --> function verifform() { if(document.formulaire.nom.value == "") { alert("Veuillez entrer votre nom!"); document.formulaire.nom.focus(); return false; } if(document.formulaire.email.value == "") { alert("Veuillez entrer votre adresse électronique!"); document.formulaire.email.focus(); return false; } if(document.formulaire.email.value.indexOf('@') == -1) { alert("Ce n'est pas une adresse électronique valable!"); document.formulaire.email.focus(); return false; } if(document.formulaire.email2.value != "") { alert("Champ caché à ne pas remplir !"); document.formulaire.email2.focus(); return false; } if(document.formulaire.message.value == "") { alert("Veuillez entrer votre message!"); document.formulaire.nom.focus(); return false; } if(document.formulaire.captcha.value != 5) { alert("La réponse du captcha est erronée!"); document.formulaire.captcha.focus(); return false; } } //--> </script> </head> <body> <div id="container"> <div id="musique"> <div id="lang"> <a href="en/"><img src="imgs/en.png" width="16" height="11" alt="vers la version en Anglais" /></a> </div> <!--FIN DE LANGUE--> <object id="FlashID3" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="175" height="45"> <param name="movie" value="swf/sound_player.swf" /> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <param name="swfversion" value="6.0.65.0" /> <!-- Cette balise <param> invite les utilisateurs de Flash Player en version 6.0 r65 et ultérieure à télécharger la version la plus récente de Flash Player. Supprimez-la si vous ne voulez pas que cette invite soit visible. --> <param name="expressinstall" value="Scripts/expressInstall.swf" /> <!-- La balise <object> suivante est destinée aux navigateurs autres qu'IE. Supprimez-la d'IE à l'aide d'IECC. --> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="swf/sound_player.swf" width="175" height="45"> <!--<![endif]--> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <param name="swfversion" value="6.0.65.0" /> <param name="expressinstall" value="Scripts/expressInstall.swf" /> <!-- Le navigateur affichera le contenu alternatif suivant pour les utilisateurs d'un lecteur Flash de version 6.0 ou de versions plus anciennes. --> <div> <p><a href="http://www.adobe.com/go/getflashplayer"><img src="http://www.adobe.com/images/shared/download_buttons/get_flash_player.gif" alt="Obtenir le lecteur Adobe Flash" width="112" height="33" /></a></p> </div> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </div> <div id="menu"> <?php include('menu.php'); ?> </div> <!-- FIN MENU --> <div id="contenu-contact"> <div id="global"> <div id="contact"> <p><strong>Pour nous contacter vous pouvez remplir ce formulaire:</strong></p> <form name="formulaire" action="validation.php" method="post" class="formulaire" id="commentForm" onsubmit="return verifform()"> <div id="col1"> <div class="formulaire"> <label for="prenom">Prénom</label> <input name="prenom" id="prenom" type="text" size="20" maxlength="20"/> </div> <div class="formulaire"> <label for="nom">Nom <span>*</span></label> <input name="nom" id="nom" type="text" size="20" maxlength="20"/> </div> <div class="formulaire"> <label for="adresse">Adresse</label> <input name="adresse" id="adresse" type="text" size="20" maxlength="50"/> </div> <div class="formulaire"> <label for="ville">Ville</label> <input name="ville" id="ville" type="text" size="20" maxlength="50" /> </div> <div class="formulaire"> <label for="phone">N° tel</label> <input name="phone" id="phone" type="text" size="20" maxlength="20" /> </div> <div class="formulaire"> <label for="email">Email <span>*</span></label> <input name="email" id="email" type="text" size="20" maxlength="50" /> </div> <! CI-DESSOUS CHAMP CACHE --> <div style="display:none"> <label for="email2">Email verification<span>*</span></label> <input id="email2" name="email2" type="text" /> </div> </div> <!--FIN DE COLONNE 1 --> <div id="col2"> <div class="formulaire"> <label for="message"> Message <span>*</span></label> <textarea name="message" id="message" cols="20" rows="3"></textarea> </div> <div class="formulaire"> <label for="captcha">3+2 = ? <span>*</span></label> <input name="captcha" id="captcha" type="text" size="5" maxlength="5" /> </div> <input type="submit" name="submit" class="envoyer" id="envoyer" value="Envoyer" /> <a href="imgs/plan.jpg" rel="shadowbox"> <img src="imgs/arrow_plan.png" width="105" height="105" alt="Plan d'accès du Penthouse Club" id="plan" /> </a> </div> <!--FIN DE COLONNE 2 --> </form> </div> <!--FIN DE CONTACT--> </div> <div id="flash"> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="410" height="430" id="FlashID" title="Dance girl"> <param name="movie" value="swf/dance_girl2.swf" /> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <param name="swfversion" value="6.0.65.0" /> <!-- La balise <object> suivante est destinée aux navigateurs autres qu'IE. Supprimez-la d'IE à l'aide d'IECC. --> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="swf/dance_girl2.swf" width="410" height="430"> <!--<![endif]--> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <param name="swfversion" value="6.0.65.0" /> <param name="expressinstall" value="js/expressInstall.swf" /> <!-- Le navigateur affichera le contenu alternatif suivant pour les utilisateurs d'un lecteur Flash de version 6.0 ou de versions plus anciennes. --> <div> <img src="imgs/alt_flash2.png" width="410" height="430" alt="Dance girl" /> </div> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </div> </div> <!-- FIN CONTENU --> <div id="footer"> <?php include('footer.php'); ?> <div id="referencement"> <p class="testsec"></p> </div> </div><!-- FIN FOOTER --> </div> <!-- FIN CONTAINER --> <script type="text/javascript"> <!-- swfobject.registerObject("FlashID"); //--> </script> </body> </html>
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 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Page validation formulaire</title> <!--[if lte IE 7]> <link type="text/css" rel="stylesheet" href="css/style-ie.css" /> <![endif]--> <link href="css/style.css" rel="stylesheet" type="text/css" media="screen" /> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script> <script type="text/javascript" src="js/shadowbox.js"></script> <script src="js/swfobject_modified.js" type="text/javascript"></script> <script type="text/javascript"> Shadowbox.init({ }); </script> </head> <?php $prenom = isset($_POST['prenom']) ? utf8_decode($_POST['prenom']) : ''; $nom = isset($_POST['nom']) ? utf8_decode($_POST['nom']) : ''; $adresse = isset($_POST['adresse']) ? utf8_decode($_POST['adresse']) : ''; $ville = isset($_POST['ville']) ? utf8_decode($_POST['ville']) : ''; $phone = isset($_POST['phone']) ? utf8_decode($_POST['phone']) : ''; $email = isset($_POST['email']) ? utf8_decode($_POST['email']) : ''; $message = isset($_POST['message']) ? utf8_decode($_POST['message']) : ''; $today = date("d-m-y H:i:s"); // destinataires $to = 'email@email.fr'; // E-MAIL DE DESTINATION DU FORMULAIRE // // Sujet $subject = 'Formulaire Contact'; // message $message = ' <html> <head> <title>Un formulaire de contact a était rempli</title> </head> <body> <h2>Informations du contact :</h2> <p style="color:#F00">Message provenant du formulaire de contact</p> <p>Date du message : '.$today.'</p> <p>Prenom : '.$prenom.'</p> <p>Nom : '.$nom.'</p> <p>Adresse : '.$adresse.'</p> <p>Ville : '.$ville.'</p> <p>Phone : '.$phone.'</p> <p>Email : '.$email.'</p> <h2>Message : </h2> <p>'.$message.'</p> </body> </html> '; // En-tête Content-type $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; // En-têtes additionnels $headers .= 'From: '.$email.'' . "\r\n"; // Envoi mail($to, $subject, $message, $headers); ?> <body> <div id="container"> <div id="musique"> <div id="lang"> <a href="en/"><img src="imgs/en.png" width="16" height="11" alt="vers la version en Anglais" /></a> </div> <!--FIN DE LANGUE--> </div> <div id="menu"> <?php include('menu.php'); ?> </div> <!-- FIN MENU --> <div id="contenu-contact"> <div id="global"> <div id="contact"> <img style="margin:75px 50px 25px;" src="imgs/validation_img.png" width="483" height="31" alt="votre message à bien été envoyé" /> </div> <!--FIN DE CONTACT--> </div> <div id="flash"> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="410" height="430" id="FlashID" title="Dance girl"> <param name="movie" value="swf/dance_girl2.swf" /> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <param name="swfversion" value="6.0.65.0" /> <!-- La balise <object> suivante est destinée aux navigateurs autres qu'IE. Supprimez-la d'IE à l'aide d'IECC. --> <!--[if !IE]>--> <object type="application/x-shockwave-flash" data="swf/dance_girl2.swf" width="410" height="430"> <!--<![endif]--> <param name="quality" value="high" /> <param name="wmode" value="transparent" /> <param name="swfversion" value="6.0.65.0" /> <param name="expressinstall" value="js/expressInstall.swf" /> <!-- Le navigateur affichera le contenu alternatif suivant pour les utilisateurs d'un lecteur Flash de version 6.0 ou de versions plus anciennes. --> <div> <img src="imgs/alt_flash2.png" width="410" height="430" alt="Dance girl" /> </div> <!--[if !IE]>--> </object> <!--<![endif]--> </object> </div> </div> <!-- FIN CONTENU --> <div id="footer"> <?php include('footer.php'); ?> <div id="referencement"> <p class="testsec"></p> </div> </div><!-- FIN FOOTER --> </div> <!-- FIN CONTAINER --> <script type="text/javascript"> <!-- swfobject.registerObject("FlashID"); //--> </script> </body> </html>
Partager