Bloquer spam forum[Résolu]
Bloquer spam forum[Résolu]
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 !
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.
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
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. ♪
Li tens revient, je ne fais riens. ♪
Les robots ne s'inscrivent plus ici, parce qu'on les fait tourner en bourrique
mise en œuvre expliquée sur mon blog
mise en œuvre expliquée sur mon blog
Flore
Mac OSX + Nightly / Laptop Linux Mint + Nightly / Nightly sur Android
Mac OSX + Nightly / Laptop Linux Mint + Nightly / Nightly sur Android
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 !
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 !
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 :
Tu disais dans le post que :
Désolé de t'embêter ainsi
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.";
}
}
et HP disait ensuite :Il suffit d'ajouter la boucle qui commence par if ( !empty($website) ) après les tests d'adresses e-mails
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
C'est très simple :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.
Code : Tout sélectionner
if (condition) {
code à exécuter si la condition est remplie;
}
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
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités