Balise #CAPTCHA

Cette nouvelle balise oblige à rentrer un code avant d’avoir accès aux forums publics des articles.

Présentation

Le système des captchas est encore très contreversé, car ce principe d’anti-spam n’est pas sûr à 100 % et qu’il ne favorise pas l’accès aux personnes ayant des déficiences visuelles. Il faut savoir néanmoins que si l’on tape l’url du forum en dur dans la barre de navigation, n’importe qui peut éviter ce « piège ».

Toutefois rien ne vous empêche d’utiliser une captcha sur votre site en complément de protection de vos contributeurs contre les spams.

La balise

La balise #CAPTCHA créera automatiquement un petit formulaire avec une image (GD2 doit être activé dans la configuration de votre site) dont vous devrez reproduire le code pour avoir accès au formulaire du forum de l’article. La redirection se fait automatiquement.

L’installation

L’installation se déroule comme pour tous les plugins, en plaçant le dossier dézippé dans le dossier plugins, et en l’activant dans la partie privée du site (cf. http://www.spip.net/fr_article3396.html)

Dans le squelette de votre page article.html vous devrez remplacer le lien vers le forum par la présente balise.

Pour finir

Si je ne suis pas très emballé par les captchas pour les raisons citées plus haut, voici un petit plugin très simple qui aura surement un rôle éducatif quand à la construction des balises dynamiques.

Vous pouvez essayer le plugin ici

Dernière modification de cette page le 12 juillet 2007

Discussion

9 discussions

  • 2

    Bonjour,

    Il serait extrêmement utile que vous puissiez faire un plugin à jour pour SPIP 2.1 et SPIP 3 de votre contribution « Balise #CAPTCHA ».

    En effet, pour nous aujourd’hui l’analyse de Cédric Morin ne peut nous satisfaire car notre situation face aux spameurs est devenue intenable avec les plugins de « protection » disponibles sous SPIP et nous avons posé la question suivante dans le forum :

    Que nous avons complétée ici :

    Bien cordialement

    FDG

    • Bernard

      Bonjour,

      Ce plugin est en effet obsolète et ne peux plus, manifestement servir à grand chose.

      Sans entrer dans une polémique pour ou contre les captcha, je dirais que si je ne suis pas très friand de ce genre de manœuvre, je peux comprendre les besoins. A chacun de prendre ses responsabilités de ce côté. Donc, oui ! Pourquoi ne reprendrais-je pas un développement de ce plugin en beaucoup mieux ?

      Laissez moi un peu de temps et je vais tenter de vous dépanner.

      Bien amicalement

    • Bonjour

      Les attaques des spammers et des hackers sont devenues tellement massives que l’on ne devrait même plus se poser la question.
      D’autant qu’il existe des CAPTCHA sonores pour les déficients visuels.

      Amicalement

    Répondre à ce message

  • 6

    merci pour votre réponse ....

    J’ai une autre question .....

    j’ai intégré le formulaire du forum (la balise #FORMULAIRE_FORUM) sous l’article, dans la page

    article.html.

    Je voudrais que la validation ou l’affichage du formulaire puisse se faire qu’après la validation du captcha.

    Je suis novice sous spip mais j’ai trouvé la fonction de condition
    [(#CAPTCHA|== ? ’|oui) #FORMULAIRE_FORUM]
    qui pourrais me convenir .... mais je n’arrive pas à la mettre en oeuvre .

    Merci d’avance pour votre support .

    • Suite .....

      Sous « captcha.php », J’ai créé une variable $_post[« Validation »] qui renvoi positif ou negatif en fonction du bon code.

      Puis sous « article.html » je récupère cette variable dans un #SET et je fais le test conditionnel pour afficher ou non le formulaire.

      (les Accolades ont été effacées après publication ????)

      #SET (accolade) v, <?php echo $_POST["Validation"];  ?> (accolade)

      [(#GETv|==Positif|oui) #FORMULAIRE_FORUM ]

      mais sa ne fonctionne pas ??????

      Apparement la condition est transparente !!!!!

      Sa fonctionne, si j’affecte la valeur « Positif » à la place de la variable $_post dans le #SET.

      Est-ce que le problème vient du faite que le traitement du php ce fait en dernier ?

    • SUITE ...
      j’ai intégré, le formulaire du forum (la balise #FORMULAIRE_FORUM) sous l’article, dans la page

      « article.html ».

      Je voudrais que l’affichage du formulaire puisse se faire qu’après la validation du bon code captcha.

      Donc :

      Sous "captcha.php", J’ai créé une variable $_post["Validation"] qui renvoi positif ou negatif en fonction de la validité du bon code.

      Puis sous "article.html" je récupère cette variable dans un #SET et je fais le test conditionnel pour afficher ou non le formulaire.

      #SETv, <?php echo $_POST["Validation"];  ?>

      [(#GETv|==Positif|oui) #FORMULAIRE_FORUM ]

      mais sa ne fonctionne pas ??????

      Apparement la condition est transparente !!!!!

      Sa fonctionne, si j’affecte la valeur "Positif" à la place de la variable $_post dans le #SET.

      Est-ce que le problème vient du faite que le traitement du php ce fait en dernier ?

    • Effectivement .....

      Pour résoudre le problème j’ai utilisé la balise technique #EVAL{} qui calcule la variable php, en même temps que celles de spip donc le traitement est respecté et le programme fonctionne.

      #SET v,#EVAL$_POST[« Validation »] ;

      [(#GETv|==Positif|oui) #FORMULAIRE_FORUM ]

      Comme les politiciens ....... je me félicite d’avoir trouvé .... :)

    • Pour terminer ....

      No spam n’est pas étanche chez moi ...... c’est pour cela que je rajoute un code captcha.

      Mais effectivement, sur votre site je ne vois pas de spam ??????

      Pourquoi ????

      A par que vous êtes très doué ..... :)

    • Aussi pour cacher le formulaire de la balise #CAPTCHA quand le code est validé :
      Il faut modifier le code de « \balise\captcha.php »

      Si la Variable « Validation = Negatif , ne pas afficher le formulaire.

      function balise_CAPTCHA_dyn()
      if ($_POST["Validation"] == ’Negatif’ )
      return array(’formulaires/captcha’, 0,
      array(
      //’captcha’ => ($lien ? $lien : generer_url_public(’captcha’)),
      )) ;

    • Aussi, je veux cacher le formulaire de la balise #CAPTCHA quand le code est validé :
      Il faut modifier le code de « \balise\captcha.php »

      Si la Variable « Validation = Negatif , afficher le formulaire.

      function balise_CAPTCHA_dyn()
      if ($_POST["Validation"] == ’Negatif’ )
      return array(’formulaires/captcha’, 0,
      array(
      //’captcha’ => ($lien ? $lien : generer_url_public(’captcha’)),
      )) ;

    Répondre à ce message

  • 1

    Bonjour,

    Je cherche une protection efficace contre le spam, sous spip .... qu’elle est celle de ce site ????

    merci

    Répondre à ce message

  • 3
    François Daniel Giezendanner

    Ce plugin est très utile, sera-t-il bientôt adapté pour SPIP 2.0.x et SPIP 2.1 ?

    Cordialement

    FDG

    • Il est conseillé d’utiliser le plugin NoSpam qui est tout aussi efficace sans constituer une gêne pour les utilisateurs.

      Les CAPTCHA ont la particularité d’être plus gênants pour les utilisateurs licites que pour les spammeurs, tout le contraire de ce qu’on attend d’une fonction intelligente.

    • François Daniel Giezendanner

      Actuellement NoSpam nous pose quelques problèmes

      Cf. : http://www.spip-contrib.net/NoSPAM#forum426021

      et nous l’avons désactivé sur les 70 sites SPIP de notre plate-forme.

      Lors de notre prochaine mise à jour nous remettrons la compresse avec NoSpam dernière version pour l’ensemble de ces sites, et observerons attentivement son fontionnement, mais en attendant CAPTCHA nous serait bien utile.

      Et pour l’avenir la technique du CAPTCHA présente pour nous tout de même un réel intérêt. Ainsi son adaptation pour SPIP 2.0.x et 2.1 nous rendrait service.

      Captcha ou pas Captcha, c’est un débat ouvert que j’exprime en partie ici :

      Pour ou contre les CAPTCHA ?
      http://icp.ge.ch/sem/cms-spip/spip.php?article1028

      Cordialement

      FDG

    • Manifestement ta configuration pose problème, et il ne sera pas possible de corriger le bug éventuel dans NoSpam sans autre indication. Mais je soupçonne plutot un formulaire de forum personalisé ou un plugin qui le surcharge et ne respecte pas l’API de SPIP.

      Au sujet des CAPTCHA, et en ce qui me concerne, le débat est clos depuis longtemps : c’est une réponse d’informaticien à un problème d’informaticien, au seul détriment des utilisateurs.
      Autrement dit parce que les développeurs versent dans la facilité et n’ont aucune envie de se compliquer la vie, ils reportent le problème et ses inconvénients sur les utilisateurs.

      Donc c’est une très bonne solution pour arriver à se débarrasser des utilisateurs en même temps que du SPAM, les-dits utilisateurs migrant au long terme vers des sites où ils sont mieux considérés.

      Le nivellement pas le bas n’est pas une option défendable à mon sens.

    Répondre à ce message

  • Bonjour j’utilise forms_et_tables_2_0 pour générer mon formulaire et j’aimerai lui rajouté ce captcha mais je ne comprend pas du tout comment faire .

    Répondre à ce message

  • A lire concernant la mauvaise pratique que constituent les CAPTCHA :
    http://www.w3.org/TR/turingtest/

    Répondre à ce message

  • 1

    Bonjour, SVP, qui pourrait m’indiquer le site où déclarer une adresse qui pollue mon site avec des commentaires codés, illisibles et criblés de liens ! Merci

    Répondre à ce message

  • 3
    erational

    Pour les développeurs, le plugin est maintenant disponible sur la zone
    http://zone.spip.org/trac/spip-zone...

    Il reste des choses à régler :
    -  Avoir une véritable vérification (au lieu d’une simple redirection qui ne protège pas grand chose)
    -  Avoir la compatibilité avec les URLs propres, ....
    -  Pouvoir l’appliquer à divers formulaires [(#CAPTCHA|auteurs)],[(#CAPTCHA|forum_article)] ...

    Répondre à ce message

  • 8

    Bonjour,

    merci pour cette contrib, je cherchais justement un contrib sur le captcha,
    est-ce que vous pouvez m’aider à l’adapter pour mettre un captcha dans le formulaire
    ecrire_auteur de spip ?
    je suis débutant en spip.

    Merci de me répondre.

    version spip : 1.9.2b
    squelette : alternative version 1.9.1.3

    • Bernard Blazin

      Oui bien entendu ! Je suis actuellement en vacances mais je rentre lundi. Nous pourrions voir ça dès le debut de semaine. C’est juste une histoire de redirection dans le fichier balise.php. Au lieu de pointer sur le forum lié à l’article, il suffit de pointer vers le formulaire ecrire_auteur. Pour cela il faudra extraire l’id_auteur, mais rien de bien sorcier.

      Bernard

    • Merci de m’avoir répondu,

      j’espère que vous avez passé de bonne vacance,
      quelles sont les codes ou les modifications que je dois faire pour que çà fonctionne s’il-vous-plait ?

      voici mon adresse mail : tantely94700@yahoo.fr

      Merci d’avance.

      cordialement

      Tantely

    • Bernard Blazin

      Je vais regarder ce que je peux faire mais suis en panne ADSL depuis mon retour. Je vous tiens au courant. Précisez moi ce que vous souhaitez exactement :

      Passer au travers la balise avant d’afficher le formulaire de contact auteurs ou bien valider le formulaire auteur après être paddé par la captcha ? et eventuellement une url de votre site . Vous pouvez me contacter sur bernard.blazin[@]free.fr

      A bientôt

    • Bernard Blazin

      Je vais regarder ce que je peux faire mais suis en panne ADSL depuis mon retour. Je vous tiens au courant. Précisez moi ce que vous souhaitez exactement :

      Passer au travers la balise avant d’afficher le formulaire de contact auteurs ou bien valider le formulaire auteur après être passé par la captcha ? et eventuellement une url de votre site . Vous pouvez me contacter sur bernard.blazin[@]free.fr

      A bientôt

    • BOnjour, je ne comprends pas comment installez le programme sur mon site de jeu en reseau.
      http://team.des.saouled.free.fr
      Des robots post des commentaires inutiles, alors que la tchatbox est au niveau I (utilisateur enregistré) et que ces derniers ne sont meme pas inscrits/ et n ont pas de compte valide.
      En attendant je banni les Ips en attendant.
      Merci de prendre conctact, sVp.

      Merci de l eventuel soutient ;)

    • bazalexandre@hotmail.fr

      Merci

      http://team.des.saouled.free.fr

    • Bernard Blazin

      Je en suis pas certain que le site soit en spip ! Me tromperais-je ?

    • En fait, mon souhait serait de reussir a installez, un code a ré-ecrire pour pouvoir poster dans notre tchatbox et pour ne pas avoir a faire a des robots spammeurs (dont leur publicité nous est bien égale..)

      Je ne pense pas que le site en soit.
      C’ est un Nuked-Clan qui y est installé, aprés je ne sais pas si cela change beaucoup de choses :/ , mais j ai deja vu un code a rentrez avant de postez dans un tchat.

      Si cela n est point possible, je vous prit de m’ excusez et de vous soouhaitez bonnes continuations.
      Merci d’ avance.

    Répondre à ce message

Ajouter un commentaire

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom