Empecher le spam de formulaire php ?

Stellvia
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 449
Inscription: 28 Déc 2004

Empecher le spam de formulaire php ?

Message le Sam Nov 24, 2007 10:34

Hello,

Savez vous comment faire pour minimiser le spam des formulaires de contact qui envois un mail en php ? ( j'aimerais éviter d'utiliser un captcha )

Je me prend des tonnes de mails de robots :/


OTP
Modérateur
Modérateur
 
Messages: 19375
Inscription: 16 Déc 2005

Message le Sam Nov 24, 2007 10:49

Tiens, voilà un exemple : -http://www.thewindpower.net/01-webmaster-eolien.php

Avec un test sur le contenu du champ antispam.

Totalement efficace.

domdom26
WRInaute impliqué
WRInaute impliqué
 
Messages: 634
Inscription: 9 Nov 2004

Message le Sam Nov 24, 2007 10:50

Dépêche toi vite de corriger la situation, car ces spameurs utilisent ton formulaire pour envoyer du spam à d.autres personne et ton ip sera blaclisté pour l'envoie de courriel :(

http://www.blacklistedip.com/

si jamais tu te fais blacklisté ;)


Kmacleod
WRInaute accro
WRInaute accro
 
Messages: 3418
Inscription: 28 Nov 2002

Message le Sam Nov 24, 2007 11:42

Si ton site est franco français, tu peux tester la langue du navigateur

[--Eric--]
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 415
Inscription: 6 Jan 2004

Re: Empecher le spam de formulaire php ?

Message le Sam Nov 24, 2007 13:57

Stellvia a écrit:Hello,

Savez vous comment faire pour minimiser le spam des formulaires de contact qui envois un mail en php ? ( j'aimerais éviter d'utiliser un captcha )

Je me prend des tonnes de mails de robots :/


Change l'adresse de la page... en évitant de lui donner un nom "générique".

dudo
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 453
Inscription: 10 Jan 2004

Re: Empecher le spam de formulaire php ?

Message le Sam Nov 24, 2007 15:59

Hello,
Savez vous comment faire pour minimiser le spam des formulaires de contact qui envois un mail en php ? ( j'aimerais éviter d'utiliser un captcha )
Je me prend des tonnes de mails de robots :


pour les amateurs de codes a mettre dans un formulaire, le 2em
80% des spammeurs dans mon cas, ils postent ( les robots) un Href, un http ou il ne faut pas. Dans ce cas il faut prevenir les visiteurs avant que le lien n'est pas autorisé a cet endroit.



}
$pattern ="(top2.info|kliviper|wero@fsvx.com|juee.ca|mochar.com)";
if (ereg($pattern,$vEmail) && ($erreur<>1)){
echo "<br><p class='red'><center><b>Vous n'êtes pas autorisé !</b></center></p>";
$erreur=1;
}
$pattern ="(http|<a href)";
if (ereg($pattern,$vMessage) && ($erreur<>1)){
echo "<br><p class='red'><center><b>Merci de ne pas mettre une adresse web dans la description !</b></center></p>";
$erreur=1;

}

[/code]

Victor BRITO
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 423
Inscription: 21 Déc 2006

Message le Sam Nov 24, 2007 16:54

Une façon efficace d'éviter de voir son formulaire PHP se transformer en redoutable serveur de spam est de se prémunir contre les injections d'en-tête. Ceux qui ne savent de quoi je parle pourront lire avec intérêt cet article qui, bien qu'il date de 2003, est toujours utile.

Stellvia
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 449
Inscription: 28 Déc 2004

Message le Sam Nov 24, 2007 23:27

Victor BRITO a écrit:Une façon efficace d'éviter de voir son formulaire PHP se transformer en redoutable serveur de spam est de se prémunir contre les injections d'en-tête. Ceux qui ne savent de quoi je parle pourront lire avec intérêt cet article qui, bien qu'il date de 2003, est toujours utile.


Merci , c'est ce genre d'article que je cherchais justement .

Le problème est que la solution proposé

Code: Tout sélectionner
if (eregi("\r",$from) || eregi("\n",$from)){
die("Why ?? :(");
}


Ne fonctionne pas , c'est le symbole \ qui bloque et fait bugué eregi ( essayé vous verrez )


cleden
WRInaute passionné
WRInaute passionné
 
Messages: 1194
Inscription: 6 Jan 2003

Message le Dim Nov 25, 2007 11:04

domdom26 a écrit:Dépêche toi vite de corriger la situation, car ces spameurs utilisent ton formulaire pour envoyer du spam à d.autres personne et ton ip sera blaclisté pour l'envoie de courriel :(

http://www.blacklistedip.com/

si jamais tu te fais blacklisté ;)

Je pense quand même qu'il vérifie l'adresse mail entrée dans le formulaire avant d'envoyer le mail :wink:

Victor BRITO
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 423
Inscription: 21 Déc 2006

Message le Dim Nov 25, 2007 12:38

Stellvia a écrit:Le problème est que la solution proposé

Code: Tout sélectionner
if (eregi("\r",$from) || eregi("\n",$from)){
die("Why ?? :(");
}


Ne fonctionne pas , c'est le symbole \ qui bloque et fait bugué eregi ( essayé vous verrez )

Essaie avec ce code :
Code: Tout sélectionner
if (preg_match("/\r/i",$from) || preg_match("/\n/i",$from)){
die("Why ?? :(");
}

Stellvia
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 449
Inscription: 28 Déc 2004

Message le Dim Nov 25, 2007 15:15

Salut Victor BRITO

Merci pour ton aide , mais ca ne fonctionne pas non plus .

Pour être plus clair le mail avec comme expediteur \n ou \r est quand même envoyer , eregi ne detecte pas \n

( c'est toujours \ qui fait déconner )

Victor BRITO
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 423
Inscription: 21 Déc 2006

Message le Dim Nov 25, 2007 19:05

8O

Bizarre...

Essaie de poser ton problème sur PHPFrance.

Je suis vraiment étonné d'entendre que ça ne marche pas.

Stellvia
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 449
Inscription: 28 Déc 2004

Message le Mer Déc 05, 2007 17:17

SAlut tout le monde

Bon ... je suis bien embeté , je continus a recevoir des dizaines de mails de spam par jour , qui sont envoyé depuis mon formulaire de contact .

J'aimerais bien comprendre comment faire pour empecher ca , ca me saoule .

Je verifie pourtant l'email de l'expediteur mais rien n'y fait , les mails que je recois ont le sujet modifié , du style :

[Edit OTP : texte supprimé.
Tu veux faire sortir WRI sur des requêtes douteuses ? :lol: ]


bref vous voyez le genre .....


lothar
WRInaute passionné
WRInaute passionné
 
Messages: 1531
Inscription: 12 Juil 2003

Message le Jeu Déc 06, 2007 11:09

Intègre un captcha comme reCaptcha, chez moi ça fonctionne parfaitement.


rog
WRInaute passionné
WRInaute passionné
 
Messages: 1662
Inscription: 21 Sep 2006

Message le Jeu Déc 06, 2007 12:05

pas eu le temps de lire l'article mais je presume qu'il traite d'injection de clrf dans la variable to dans le but de rajouter des bc ou cc

les symboles cl et rf sont des caractères invisibles en mode texte donc ils ont la representation \n \r

et php peut très bien les traiter dans leurs formats invisibles par les fonctions chr() et ord()

on trouvera la correspondance en index dans la table ascii

http://asciitable.com/

CR = index decimal 13
LF = index decimal 10

rog

Empecher le spam de formulaire php ?

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités