Bloquer spam forum[Résolu]

Toutes remarques, tout intérêt, toutes choses à dire ou à demander à propos de Geckozone... Vous voulez participer à ce projet ? C'est par là qu'ça se passe...
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Bloquer spam forum[Résolu]

Message par jojaba »

Bonjour,
Je sais que je ne devrai pas poser la question ici mais sur les forum de phpBB, mais pour être franc, j'ai plusieurs fois été refroidi par leur réponse du style : pourquoi tu poses cette question, elle a été traitée 36 000 fois ! Difficile de faire des recherches précises sur ce genre de forum il faut bien le dire !
Alors voilà ma question :
Mon forum (cogéré avec Jujuland depuis peu) est victime de spams (ou plutôt d'inscriptions indésirables). Pour l'instant, nous arrivons à contrôler la situation en bannissant au niveau des adresses courriel. Mais à depuis peu, des messages bizarres en anglais sont postés sur nos forums. Je me demandais donc s'il y avait un mod qui permettait de stopper ce spam. Je n'ai rien trouvé sur phpBB mais je sais qu'ici vous évitez le spam en demandant de prévisualiser le sujet avant de le poster (c'est bien ça, n'est-vce pas). Pourrait-on savoir comment procéder pour rendre cette prévisualisation obligatoire (je suppose qu'il faut insérer des lignes de codes dans un fichier php !
Sinon, un autre moyen pour éviter ces inscriptions et ces messages indésirables ?

Merci d'avance et Joyeux Noël à tous !
Dernière modification par jojaba le 07 janv. 2006, 09:17, modifié 1 fois.
FluxBB et PluXml simples et puissants !
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Nous avons en effet, et à notre grand dam (car cela complique énormément l'applications des mises à jour de sécurité), modifié le code de phpBB.

J'essaierai de te faire un copier-coller du code qu'on utilise, si jamais tu ne le vois pas arriver avant une semaine n'hésite pas à faire remonter ce sujet :)
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Message par jojaba »

Merci beaucoup Benoît et bonnes fêtes !
FluxBB et PluXml simples et puissants !
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Message par jojaba »

Rassure-moi Benoît, vous avez aussi des inscriptions indésirables sur votre forum ?
Chez moi ça n'arrête pas !
Dernière modification par jojaba le 30 déc. 2005, 05:16, modifié 1 fois.
FluxBB et PluXml simples et puissants !
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Je ne pense pas qu'on surveille les inscriptions, tant qu'ils ne peuvent pas poster ça ne fait pas trop de mal. Je sais que ça fausse sans doute les statistiques mais bon...
♫ Li tens s'en veit, je n'ai riens fais ;
Li tens revient, je ne fais riens. ♪
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Message par jojaba »

Personnellement,ça me gêne de laisser des inscrits soumettant des sites proposant drogues, sexe et autres ... :evil:
Mais il est vrai que vu le nombre d'inscrits sur Geckozone, ce genre d'indésirables doit être noyé dans la masse. :wink:
FluxBB et PluXml simples et puissants !
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

En fait ce sont des robots qui s'inscrivent. Ensuite ils font ce qu'ils veulent. Sauf s'il y a la prévisualisation obligatoire qui les embête ;-)

Cela dit Benoit ne semble pas très disposer à te divulguer le code j'ai l'impression :?
Flore
Administratrice
Messages : 3567
Inscription : 19 nov. 2003, 23:04

Message par Flore »

Les robots ne s'inscrivent plus ici, parce qu'on les fait tourner en bourrique :lol: :lol: :lol:
mise en œuvre expliquée sur mon blog
Flore
Mac OSX + Nightly / Laptop Linux Mint + Nightly / Nightly sur Android
Avatar de l’utilisateur
bambi
Iguane
Messages : 599
Inscription : 17 sept. 2003, 12:29

Message par bambi »

Merci pour ce lien Flore.
On cherche actuellement une solution pour le forum world-informatique.
Je vais de ce pas proposer cette idée :wink:
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Notons que c'est efficace contre les robots qui s'inscrivent. Mais ici nous avions aussi beaucoup de robots en invités. Et là seule la technique de la prévisualisation est efficace. À voir donc selon le type de spam subi :wink:
Flore
Administratrice
Messages : 3567
Inscription : 19 nov. 2003, 23:04

Message par Flore »

On peut mettre les 2 ensemble, comme ici :D
Flore
Mac OSX + Nightly / Laptop Linux Mint + Nightly / Nightly sur Android
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Message par jojaba »

Effectivement, j'ai eu des inscriptions avec sites web par robots et dans ce cas, si j'ai bien compris, il va falloir modifier le usercp_register.php dans le répertoire /forums/includes/ comme indiqué ici c'est ça Flore ?
Mais j'ai aussi eu la visite de robots qui laissaient des messages sur le forum en tant qu'invités (j'ai simplement modifié dans mon panneau d'administration les permissions en étant plus restrictif, mais cela au prix d'une moins bonne convivialité, puisque les utilisateurs sont obligés de s'inscrire pour poster).
J'attends ta réponse Flore et je colle ton code pour déjà pallier le problème prioritaire.

Merci beaucoup !
FluxBB et PluXml simples et puissants !
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Message par jojaba »

Je m'excuse, mais je n'ai vraiment aucune notion de php (les boucles if then else, ça me rappelle mon basic mais en php ça a l'air bien plus compliqué) et j'ai peur de faire une erreur. puis-je connaître l'emplacement exact où je devari coller le code que je rappelle ici pour ceux qui, comme moi, sont à la recherche de ce genre de solution :

Code : Tout sélectionner

else if ( $mode == 'register' )
   {
      if ( empty($username) || empty($new_password) || empty($password_confirm) || empty($email) )
      {
         $error = TRUE;
         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $lang['Fields_empty'];
      }
      if ( !empty($website) )
      {
         $error = TRUE;
         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . "Spammers are *not* allowed!<br />Afin d'éviter l'inscription de spammers, veuillez ne pas mettre d'adresse web lors de votre inscription. Vous pourrez remplir ce champ plus tard.";
      }
   } 
Tu disais dans le post que :
Il suffit d'ajouter la boucle qui commence par if ( !empty($website) ) après les tests d'adresses e-mails
et HP disait ensuite :
donc après :

Code:

Code : Tout sélectionner

//
   // Do a ban check on this email address
   //
   if ( $email != $userdata['user_email'] || $mode == 'register' )
   {
      $result = validate_email($email);
      if ( $result['error'] )
      {
         $email = $userdata['user_email'];

         $error = TRUE;
         $error_msg .= ( ( isset($error_msg) ) ? '<br />' : '' ) . $result['error_msg'];
      }
:?:

Désolé de t'embêter ainsi :oops:
FluxBB et PluXml simples et puissants !
jojaba
Lézard à collerette
Messages : 365
Inscription : 10 janv. 2004, 21:04

Message par jojaba »

ça marche impeccablement comme c'est noté ci-dessus ! Si le fichier usercp_register.php n'a pas été modifié avant la manip, la ligne à laquelle il faut ajouter le code est la numéro 381 (sur phpBB 2.0.17)!
Encore un grand merci ! :wink:
FluxBB et PluXml simples et puissants !
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

jojaba a écrit :Je m'excuse, mais je n'ai vraiment aucune notion de php (les boucles if then else, ça me rappelle mon basic mais en php ça a l'air bien plus compliqué) et j'ai peur de faire une erreur.
C'est très simple :

Code : Tout sélectionner

if (condition) {
	code à exécuter si la condition est remplie;
}
La condition (ou les conditions) est entre parenthèse juste après le if, et le code est contenu entre { et }

Puis tu as else if (condition) {} (ou elseif en un seul mot) et aussi else {} (sans condition celui là). C'est pas très compliqué, sauf quand tu commences à en imbriquer plusieurs (là l'indentation devient vitale)

Pour plus de détails, voir http://php.net/if :wink:
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 15 invités