Re: Inscriptions d'utilisateurs indésirables | Titre du sujet : Re: Inscriptions d'utilisateurs indésirables par olivee sur 29/10/2013 23:29:18
En faisant une petite recherche sur google je tombe sur pas mal de question concernant le robot inscription avec pratiquement tous les CMS, la meilleur solution possible testé avec d'autres CMS est la question réponse dans le formulaire d'inscription. le principe est simple chaque webmaster peut configurer une question avec une réponse propre à lui. passons maintenant au pratique. j'utilise xoops 2.5.4 et le module profile 1.62 on commence par modifier le fichier include/forms.php on cherche la ligne Citation : $elements[0][] = array('element' => new XoopsFormPassword(_US_VERIFYPASS, 'vpass', 35, 32, ''), 'required' => true); $weights[0][] = 0;
juste apres on colle
Citation : global $xoopsModuleConfig; $elements[0][] = array('element' => new XoopsFormLabel(_QUESTION_ANTI_ROBOT, $xoopsModuleConfig['profile_questionn'])); $weights[0][] = 0;
$elements[0][] = array('element' => new XoopsFormText(_REPONSE_AU_QUESTION_ANTIBOT, 'question', 35, 32, ''), 'required' => true); $weights[0][] = 0;
on ouvre maintenant le fichier register.php
on cherche la ligne
Citation :$vpass = isset($_POST['vpass']) ? $myts->stripSlashesGPC(trim($_POST['vpass']) ) : '';
et on colle juste après le code
Citation : $question = isset($_POST['question']) ? $myts->stripSlashesGPC(trim($_POST['question']) ) : '';
global $xoopsModuleConfig; if ( (isset($question)) && ($question != $xoopsModuleConfig['profile_reponse']) ) { $stop .= _US_REPONSEAUQUESTIONESTFAUX . '<br />'; }
le 3eme fichier à modifier est xoops_version.php
on colle dans la partie de configurtation
Citation :$modversion['config'][2]['name'] = 'profile_questionn'; $modversion['config'][2]['title'] = '_PROFILE_MI_PROFILE_QUESTION'; $modversion['config'][2]['description'] = ''; $modversion['config'][2]['formtype'] = 'textbox'; $modversion['config'][2]['valuetype'] = 'text'; $modversion['config'][2]['default'] = 'où se trouve Paris??';
$modversion['config'][3]['name'] = 'profile_reponse'; $modversion['config'][3]['title'] = '_PROFILE_MI_PROFILE_REPONSE'; $modversion['config'][3]['description'] = ''; $modversion['config'][3]['formtype'] = 'textbox'; $modversion['config'][3]['valuetype'] = 'text'; $modversion['config'][3]['default'] = 'france';
dans le fichier language/main.php on colle
Citation :define("_REPONSE_AU_QUESTION_ANTIBOT", "La reponse pour la question est:"); define("_US_REPONSEAUQUESTIONESTFAUX", "Votre reponse au question est faux. ressayez encore une fois"); define("_QUESTION_ANTI_ROBOT", "Question Anti Robots, Prouve que vous etes humain");
voilà c'est tout vous pouvez changer la question et la réponse dans les préférence de profile soit par exemple 4 plus 3 égal à combien? l'utilisateur doit taper manuellement la réponse juste pour pouvoir s'inscrire sinon il tombe sur un message d'erreur pour ressayer. depuis que j'ai ajouté ça à mon site j'ai jamais eu d'inscription bidon même si ça arrive on sait jamais il suffit de modifier la question et la réponse dans les préférences.
|
|