Navigation

Toutes les catégories

Filtrer par auteur

Voir les derniers articles

Mettre en place reCaptcha sur Phpbb3

Il est souvent bien utile de vouloir se protéger des spammers et des inscriptions non sollicitées. reCaptcha est considéré comme un des plus  simple à mettre en plus et des plus...

reCaptcha

Il est souvent bien utile de vouloir se protéger des spammers et des inscriptions non sollicitées. reCaptcha est considéré comme un des plus  simple à mettre en plus et des plus sécurisé. Il s’intègre facilement avec de nombreux CMS comme jomla, wordpress ou encore PhpBB. Cependant aucune version n’est disponible pour la version PHPbb 3. Il faut donc modifier le code de certaines pages pour le mettre en place. C’est simple et stable.  Je vous conseille donc de l’effectuer.

Procédure :

Vous retrouverez les fichiers modifiés dans une archive téléchargeable ici. Sinon si vous souhaitez modifier directement vos fichiers télécharger reCaptcha pour Phpbb 2

1. Placer recaptchalib.php dans %phpbb_root_path %/includes/captcha

2. Sauvegarder les deux fichiers %phpbb_root_path %/styles/prosilver/template/ucp_register.html, %phpbb_root_path %/includes/ucp/ucp_register.php

3. Dans ucp_register.html :

A. Trouver <dd>{CONFIRM_IMG}</dd> et supprimer les lignes qui suivent :

[html]<dd><input type="text" name="confirm_code" id="confirm_code" size="8"
maxlength="8" title="{L_CONFIRM_CODE}" /></dd><dd>{L_CONFIRM_CODE_EXPLAIN}</dd>[/html]

4. Dans ucp_register.php :

A. Placer la ligne suivante juste avant l’instruction class ucp_register :

[php]require_once($phpbb_root_path . ‘includes/captcha/recaptchalib.’ .
$phpEx) ;[/php]

B. Placer les lignes de codes suivantes juste après global $config, $db, $user, $auth, $template, $phpbb_root_path, $phpEx ; (cela se trouve à quelques ligne de celle précendente) :

[php]
// Get a key from http ://recaptcha.net/api/getkey
$publickey =  » ;
$privatekey =  » ;
# the response from reCAPTCHA
$resp = null ;
# the error code from reCAPTCHA, if any
$error = null ;[/php]

Attention veillez à obtenir une clé publique et privé pour le renseigné en haut. Pour cela il suffit de s’inscrire gratuitement au service.

C. Modifier la ligne $confirm_id = request_var(‘confirm_id’,  ») ; par :

[php]$confirm_id = (isset($_POST[‘recaptcha_response_field’])) ; [/php]

D. Supprimer la ligne :

[php]’confirm_code’ = array(‘string’, !$config[‘enable_confirm’], 5, 8), [/php]

E. Trouver la ligne $wrong_confirm = false ; et remplacer le bloc if par celui qui suit :

[php]if ($config[‘enable_confirm’])*/
if ( !$confirm_id) {
}
else {
$resp = recaptcha_check_answer ($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]) ;
if ($resp->is_valid == false) {
$error[] = $user->lang[‘CONFIRM_CODE_WRONG’] ;
$wrong_confirm = true ;
}
}[/php]

F. Trouver la ligne de code $code = gen_rand_string(mt_rand(5, 8)) ; et supprimer jusqu’à la ligne $db->sql_query($sql) ; (comprise)

G. Quelques lignes après la dernière supprimer modifier $confirm_image = en

[php]$confirm_image = recaptcha_get_html($publickey, $error) ; [/php]

Voilà cela devrait fonctionner correctement. Vider le dossier cache de votre forum et rendez vous sur la page d’inscription pour voir le nouveau captcha.

Je vous rappelle que les fichiers déjà modifiés sont disponibles ici. Bonne modifications.

Newsletter WebActus

Abonnez-vous pour recevoir notre sélection des meilleurs articles directement dans votre boîte mail.

Nous ne partagerons pas votre adresse e-mail.

Articles similaires

Webmarketing

Faux followers sur Twitter : ouverture d’une enquête pour « usurpation d’identité »

Les « faux comptes » qui ne représentent ni une personne physique, ni une personne morale, sont légion sur Twitter. Certains robots sont...

Publié le par Thomas Coeffe
Webmarketing

Les équivalents de MegaUpload change leurs fonctionnalités les uns après les autres !

L’histoire MegaUpload fait grand bruit et surtout peur à de nombreux sites équivalents qui ont annoncés fermer leurs portes aux téléchargements directs. En effet, Filesonic,...

Publié le par Team WebActus