Forum de discussion phpBB

Depuis quelques mois déjà, une bien dérangeante réalité s’était fait sentir sur plusieurs de mes forums phpBB. Les webmasters gérant ce type de forum doivent assurément savoir de quoi je parle… Le phpBB-Spam! Ces p’tits maudits robots qui se crée des compte à tous les jours sur mes forums et qui lancent de la publicité à gauche et à droite en se faisant croire que je ne les supprimerai pas…

J’ai essayer d’installer quelques plugins. Même Bad-Behavior pour phpBB n’a pas fonctionné.. Comme je n’ai pas réussi à éradiquer le problème avec les solutions existantes alors j’ai decidé de programmer ma propre solution à ce problème.

Voici la procédure à suivre :

1) Modifier le fichier includes/usercp_register.php
Vers la ligne 271, vous devriez voir un bout de code ressemblant à ceci.

else if ( $mode == 'register' )
{

Maintenant, il suffit d’ajouter ce bout de code en dessous du {

// Vérification de faux navigateurs.
if ($mode == 'register' && $_GET['jcheck'] != 'mspam') {
message_die(GENERAL_MESSAGE, 'Votre navigateur a été détecter comme spam. Veuillez contacter l\'administrateur du forum s\'il s\'agit d\'un erreur.', '', __LINE__, __FILE__);
}

2) Ajouter une fonction javascript à votre modèle de page
Il vous faut maintenant inclure un petit bout de code JavaScript que les robots ne sauront comprendre.
Ouvrez le fichier templates/nom_du_template/overall_header.tpl et ajouter cette fonction JavaScript à l’intérieur des balises <head> [ … ] </head>

<script language="javascript">
function testDetect() {
window.document.getElementById(’myformregister’).action = ‘profile.php?jcheck=mspam’;
}
</script>

3) Modifier maintenant le code HTML de votre page profil
Ouvrez le fichier templates/nom_du_template/profile_add_body.php

Effectuer une recherche pour vous retrouvez vers cette ligne :

<form action="{S_PROFILE_ACTION}" {S_FORM_ENCTYPE}

Remplacez le code HTML de la balise <form> par celui-ci.

<form action="{S_PROFILE_ACTION}" {S_FORM_ENCTYPE} name="myformregister" id="myformregister" method="post" name="profile">

Dernière étape :
Effectuer une recherche pour vous retrouvez vers cette ligne :

<input type="submit" name="submit"

Remplacez le code HTML du bouton «submit» par celui-ci :

<input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" onclick="testDetect();" />

Vous ne devriez plus être ennuyé par le spam sur phpBB!

- Matt