Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] Captcha

Posted by bruno on 08/06/2007 00:55

Ayant eu besoin d'intégrer captcha à mes formulaires je me suis convertis http://www.cryptographp.com (qui m'a semblé le plus adéquat) en classe Jelix.

1.Est-il prévut d'intégrer un système captcha sur Jelix ?

2.Ayant fait aussi un plugin de template ci-dessous et n'ayant pas totalement intégré son fonctionnement je me demandais pourquoi ne puis-je pas ajouter des variables.

exemple qui fonctionne :

 function jtpl_function_captcha($cfg='0',$reload='1') { 	
   echo '<table><tr><td><img id="cryptogram" src="index.php?module=index&action=default_captchaview&cfg=0"></td>';
   if ($reload) echo "<td><a title='".($reload==1?'':$reload)."' style=\"cursor:pointer\" onclick=\"javascript:document.images.cryptogram.src='index.php?module=index&action=default_captchaview&cfg=0&'+Math.round(Math.random(0)*1000)+1\"><img src=\"images/reload.jpg\" /></a></td>";
   echo "</tr></table><br />Recopier le code:<br /><input type=\"text\" name=\"code\" />";
 }

exemple qui ne fonctionne pas (ajout de $cfg à la seconde ligne) :

 function jtpl_function_captcha($cfg='0',$reload='1') { 	
   echo '<table><tr><td><img id="cryptogram" src="index.php?module=index&action=default_captchaview&cfg='.$cfg.'"></td>';
   if ($reload) echo "<td><a title='".($reload==1?'':$reload)."' style=\"cursor:pointer\" onclick=\"javascript:document.images.cryptogram.src='index.php?module=index&action=default_captchaview&cfg=0&'+Math.round(Math.random(0)*1000)+1\"><img src=\"images/reload.jpg\" /></a></td>";
   echo "</tr></table><br />Recopier le code:<br /><input type=\"text\" name=\"code\" />";
 }

Voilà si quelqu'un a besoin de la classe n'hésitez pas.

bruno

  [Opened] Re: Captcha

Reply #1 Posted by laurentj on 08/06/2007 11:39

Est-il prévut d'intégrer un système captcha sur Jelix ?

Oui, j'ai même prévu d'intégrer une balise <captcha> dans jForms. Mais je n'ai pas encore reflechi sur la manière d'intégrer ça.

je me suis convertis http://www.cryptographp.com (qui m'a semblé le plus adéquat) en classe Jelix.

Oui pourquoi pas. Cependant je n'aimes pas ce type de captcha : la plupart sont inaccessibles voir illisible même pour une personne ayant une vue correcte.

J'aimerai donc un autre type de captcha (en plus de celui là) : le genre de captcha qui te pose une question (genre le résultat d'une opération numérique, ou la nième lettre de tel mot etc...).

je me demandais pourquoi ne puis-je pas ajouter des variables.

Ça fait plusieurs messages dans le forum où je vois le même genre de question complètement floue, donc je le dis : pourquoi vous n'expliquez pas exactement le problème, plutôt que de dire "ça ne va pas" ?? Ici par exemple, qu'est ce qui te fait dire que tu ne peux pas ajouter de variables ? qu'elle est l'erreur qui apparait ? qu'est ce qui se passe vraiment ?

Dire "ça ne va pas", ça ne veut rien dire, on ne peut souvent rien répondre :-p

Bon sinon, les problèmes que je vois :

 function jtpl_function_captcha($cfg='0',$reload='1') {

les plugins de type fonctions doivent avoir un premier paramètre obligatoire qui est l'objet jTpl (bref tu as oublié un premier paramètre, d'où ton problème j'imagine)

 <table><tr><td>

Un balisage un peu plus propre et sémantique serait mieux

 src="index.php?module=index&action=default_captchaview&cfg=0"

On ne met JAMAIS d'url jelix en dur dans le code. Il faut utiliser jUrl. (parce que là, si j'active les urls significatifs dans mon code, ton plugin ne fonctionne plus..)

  if ($reload) echo ...

Vu la longueur de la ligne, c'est mieux de passer à la ligne après le if.

  if ($reload) echo "<td><a title='".($reload==1?'':$reload)."'

le test $reload==1 ne sert à rien vu que tu fais déjà ce test juste avant.

   style=\"cursor:pointer\"

Est ce vraiment utile ? vu que c'est un lien, en principe le curseur devient un pointeur non ?

   Recopier le code:

Accessibilité ! utiliser une balise <label> ;-)

   name=\"code\"

Utiliser des noms plus spécifiques, genre "captcha_code". Parce que là, vu le nom, il y a de fortes probabilités qu'il y ait collision avec d'autres champs du formulaire de l'utilisateur du captcha.

Sinon, il n'y a pas de champs cachés ? la valeur du captcha est dans une variable de session c'est ça ? Pas de risque de disfonctionnement si l'utilisateur affiche plusieurs formulaires différent en même temps ?

Une fois tes problèmes corrigés/réglés, ça serait pas mal de proposer ton patch dans un ticket ;-)

  [Opened] Re: Captcha

Reply #2 Posted by bruno on 08/06/2007 14:08

laurentj a écrit:

La plupart sont inaccessibles voir illisible même pour une personne ayant une vue correcte.
J'aimerai donc un autre type de captcha (en plus de celui là) : le genre de captcha qui te pose une question (genre le résultat d'une opération numérique, ou la nième lettre de tel mot etc...).

J'adère rien à voir avec l'illisible recaptcha.

qu'est ce qui te fait dire que tu ne peux pas ajouter de variables ? qu'elle est l'erreur qui apparait ? qu'est ce qui se passe vraiment ?

Bon effectivement, j'avais oublié l'objet mille et une excuses.

Dire "ça ne va pas", ça ne veut rien dire, on ne peut souvent rien répondre :-p

Où, où est-ce que j'ai dis que ça ne va pas ? J'ai juste dis que je n'avais pas totalement intégré son fonctionnement. :D

Concenant le code; il n'est pas de moi, j'ai juste fais un copié collé de l'exemple présent dans cryptographp, effectivement le code est crade et il manque un petit jurl, je comptais bien le refaire ;)

 

Sinon, il n'y a pas de champs cachés ? la valeur
du captcha est dans une variable de session c'est
ça ? Pas de risque de disfonctionnement si
l'utilisateur affiche plusieurs formulaires
différent en même temps ?

Oui variable de session et à priori il ne devrai pas y avoir de risque de disfonctionnement je ferai plus de tests.

Une fois tes problèmes corrigés/réglés, ça serait
pas mal de proposer ton patch dans un ticket ;-)

Avec grand plaisir, je suis un peu dans le flou concernant la licence Cecill, à étudier! Ensuite concernant la taille de 283ko cela correspond surtout au répertoire des fonts suffit d'en mettre une par défault et de virer les autres.

ps:Bruno sera plus précis et plus compréhensible la prochaine fois. :)

  [Opened] Re: Captcha

Reply #3 Posted by bballizlife on 08/06/2007 18:18

On sent qu'il lui reste encore un t-shirt openweb au chef ;)


N'importe comment c'est dans la doc

  [Opened] Re: Captcha

Reply #4 Posted by Powermanga on 11/30/2007 21:16

Bonsoir Bruno,

Oui je serai intéressé par ta classe.

Si tu peux me la faire parvenir à l'adresse bruno<AT>pubs-suisses<DOT>com ?

Merci :-)

  [Opened] Re: Captcha

Reply #5 Posted by bruno on 12/01/2007 00:40

Salut Bruno :D

Je t'envoie tout ça dès que possible. Par contre j'ai un petit soucis au niveau du cookie pour afficher l'image lors de la première connexion, du coup j'ai mis un petit script JS qui me rafraîchie tout ça si jamais tu trouves une solution un peu mieux adapté je suis preneur, j'ai pas eu plus de temps que cela pour me pencher dessus.

  [Opened] Re: Captcha

Reply #6 Posted by gthomas on 08/05/2008 09:28

Bien le bonjour, ce captcha a-t-il été intégré à Jelix ? Sinon quelqu' un a-t-il le code ?

Merci à la communauté !!!

Guillaume

 
Page
  1. Re: Captcha