Créer un Anti-Spam pour formulaire contact PHP
Fermé
blaz32
Messages postés
155
Date d'inscription
jeudi 27 juin 2013
Statut
Membre
Dernière intervention
28 août 2014
-
24 nov. 2013 à 21:27
Solu-Web.quebec Messages postés 1 Date d'inscription lundi 25 mai 2015 Statut Membre Dernière intervention 25 mai 2015 - 25 mai 2015 à 06:25
Solu-Web.quebec Messages postés 1 Date d'inscription lundi 25 mai 2015 Statut Membre Dernière intervention 25 mai 2015 - 25 mai 2015 à 06:25
A voir également:
- Php antispam
- Easy php - Télécharger - Divers Web & Internet
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Href php ✓ - Forum PHP
- Bouton php - Forum PHP
- Echo image php ✓ - Forum PHP
2 réponses
blaz32
Messages postés
155
Date d'inscription
jeudi 27 juin 2013
Statut
Membre
Dernière intervention
28 août 2014
10
24 nov. 2013 à 21:37
24 nov. 2013 à 21:37
Oui le captcha, je connais et j'ai déjà fais ce système mais, je ne veux pas que l'utilisateur soit obligé de remplir un champs supplémentaire...
Après ? je ne sais pas si j'ai raison ou tort... ?
Mais sa semble logique, car un ordinateur générant le code va remplir tous les champs, et mon code dit "si ce truc là est vide, alors on continue, mais si il est rempli, j'affiche mon message d'erreur"...
Je veux des avis : Piège ou captcha ?
Après ? je ne sais pas si j'ai raison ou tort... ?
Mais sa semble logique, car un ordinateur générant le code va remplir tous les champs, et mon code dit "si ce truc là est vide, alors on continue, mais si il est rempli, j'affiche mon message d'erreur"...
Je veux des avis : Piège ou captcha ?
Aranud87
Messages postés
18031
Date d'inscription
dimanche 29 octobre 2006
Statut
Contributeur
Dernière intervention
7 juin 2020
3 293
24 nov. 2013 à 21:29
24 nov. 2013 à 21:29
Salut,
Voilà une explication :
http://www.6ma.fr/tuto/image-de-securite-pour-formulaires-php/
Voilà une explication :
http://www.6ma.fr/tuto/image-de-securite-pour-formulaires-php/
24 nov. 2013 à 22:20
J'ai également traité ce sujet ici:
https://html5.immo-scope.com/article/general_filtrerLesRobotsSpammeurs
Mais pas efficace à 100%
L'idéal est de faire croire que le message est envoyé. Il faut que pour le robot spammeur il ait l'illusion que son envoi s'est bien passé. Donc, même message pour tout le monde. La différence: pour le robot spammeur, on n'envoye pas le mail.
A+
25 mai 2015 à 06:25
J'utilise le script php de grafik-power dont voici le code où j'y ai insérer le champ "age":
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="css main" href="styles/style-main.css" />
<link rel='stylesheet'href='style.css' />
<script type='text/javascript' src='js/jquery-1.3.2.min.js'></script>
<script type='text/javascript' src='js/form_c.js'></script>
</head>
<title>Contactez nous</title>
</head>
<body>
<?php include("banniere.php"); ?>
<?php include("menu-h.php"); ?>
<?php include("menu-gauche.php"); ?>
.monAge {
display: none;
}
<div id="corps">
<div id='formulaire'>
<form action='send.php' method='post' id='contact_form'>
<h2><img id='contact_logo' src='images/mail.png' /> Formulaire de contact</h2><em>Réalisé et proposé par <a href="http://www.grafik-power.com/" title="GrafikPower.com">GrafikPower.com</a></em>
<p>
<div>
<label for="age" class="monAge">Votre age:
<input type="text" name="age" id="age"></label>
</div>
<div></div>
</p>
<p> Votre nom :
<div id='name_error' class='error'><img src='images/error.png'> veuillez entrer votre nom !!</div>
<div>
<input type='text' name='name' id='name'>
</div>
</p>
<p> Votre Email :
<div id='email_error' class='error'><img src='images/error.png'> veuillez entrer votre e-mail !!</div>
<div>
<input type='text' name='email' id='email'>
</div>
</p>
<p> Votre sujet :
<div id='subject_error' class='error'><img src='images/error.png'> veuillez préciser votre sujet !!</div>
<div>
<input type='text' name='subject' id='subject'>
</div>
</p>
<p> Votre message :
<div id='message_error' class='error'><img src='images/error.png'> Champs message est requis !!</div>
<div>
<textarea name='message' id='message'></textarea>
</div>
</p>
<div id='mail_success' class='success'><img src='images/success.png'> Merci ! Votre message a bien été envoyé !!</div>
<div id='mail_fail' class='error'><img src='images/error.png'> votre message n'a pas été envoyé, réessayer plus tard !!</div>
<p id='cf_submit_p'>
<input type='submit' id='send_message' value='Envoyer votre message'>
</p>
</form>
<br />
</div>
</div>
<?php include("pied.php"); ?>
</body>
</html>
Le champ "age" est-il à la bonne place?
aussi le code : " .monAge {
display: none;
} " je le met dans mon fichier style.css ?
Et ce bout de code : "// test si age est vide
if (empty($_POST['age']])) {
// ...ici partie de code qui envoie le message
}
?>
...ici message HTML qui confirme envoi message OK..." je ne sais vraiment pas ou l'insérer pour que ça fonctionne.
Bref j'suis un peu nul dans cette situation....
Merci beaucoup pour l'aide qui viendra, j'en suis convaincu :)
Modifié par blaz32 le 24/11/2013 à 22:30
Après, je ne pense pas que les robots puisse faire des injections SQL si le champs est protégé (htmlspecialchars/htmlentites ou mysql_escape_string etc...)...