CAPTCHA

Messagepar pedrope » Sam 22 Aoû 2009, 04:08

Bonjour,

J'ai récupéré le code d'un générateur de captcha sur http://www.captcha.fr et j'ai essayé de l'inclure dans OSCSS sur les différents formulaires que j'utilise. Le problème que je rencontre est le suivant : dès qu'un formulaire devant inclure un captcha est ouvert, il semble que le générateur de captcha écrase les variables d'environnement d'OSCSS d'où des problèmes dès que des fonctions OSCSS sont utilisées : mise à jour de l'historique de navigation ou bien panier résumé par exemple. En by-passant les fonctions qui posent problème ça marche super bien, mais ce n'est pas viable.
Quelle serait la marche à suivre pour pouvoir intégrer proprement ce générateur de captchas à OSCSS ?
Si quelqu'un ou quelqu'une a une idée je suis preneur.
Merci
pedrope
Membre actif
 
Messages: 33
Inscription: Dim 05 Oct 2008, 17:40

Messagepar pedrope » Ven 28 Aoû 2009, 04:36

Complement d'information
Voici le message d'erreur que j'obtiens par exemple lorsque je crée un compte et que j'ai activé l'affichage de l'anti spam:
Fatal error: main() [<a href='function.main'>function.main</a>]: The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition &quot;shoppingCart&quot; of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide a __autoload() function to load the class definition in C:wampwwwsitecreate_account.php on line 251

la ligne 251 du create_account.php est :
$cart->restore_contents();
ce qui permet au client qui vient d'ouvrir un compte de récupérer le contenu de son panier "visiteur"

Ceci vient du fait que j'ai ajouté les commandes suivantes au début de create_account.php :
$cryptinstall="./crypt/cryptographp.fct.php";
include $cryptinstall;
ce qui a pour effet de créer une autre session.

J'ai trouvé une solution pour contourner ce probleme avec contact_us et faire connaitre à un ami en créant une variable captcha que je teste et si elle est définie je n'exécute pas le code qui crée l'erreur.
Ici c'est plus génant car je souhaiterais que le panier du "visiteur" soit effectivement récupéré après la création du compte.

D'une manière générale lorsque l'anti spam est activé tout ce qui est en :
$quelquechose -> crée une erreur
Comme je le disais dans mon premier post la session crée par l'anti spam semble faire perdre des références nécessaires au bon déroulement du reste du script...
J'ai bien evidemment chercher des infos au sujet de AUTOLOAD mais je ne sais pas trop par quel bout le prendre.....

Même conclusion :
Si quelqu'un a un tuyau je suis preneur.
Merci d'avance
Dernière édition par pedrope le Lun 14 Sep 2009, 15:42, édité 1 fois.
pedrope
Membre actif
 
Messages: 33
Inscription: Dim 05 Oct 2008, 17:40

Messagepar oscim » Ven 28 Aoû 2009, 12:16

Bonjour,

effectivement il a l'air sympa ce petit captcha.

Dans quel fichier avez vous placer les appels, de maniére permanente, dans le application top ?

En fait, je pense qu'il doit pouvoir passer, appelé par appli_top, en fin de fichier.

Il faut aussi supprimer les appel a session_start dans les fichier du captcha, pour ne pas foirer.
Et surtout ,c'est la boutique qui structure session et identifcation. Le captcha vient apres.

Penser a utiliser les messageStack pour les retour d'erreur.
Pour un web au normes du W3C, pour un web plus propre !

- Download osCSS Toutes versions
- stable osCSS 2.1.0 (help|info|new dev) Official help|wiki|Tuto for osCSS 2 | doc doxygen
- Utiliser le tracker pour suivre les évolutions et développements
- Inscrivez vos sites sur oscss pour présenter vos réalisations
Avatar de l’utilisateur
oscim
Site Admin
 
Messages: 1643
Inscription: Mar 25 Sep 2007, 11:33

Messagepar pedrope » Ven 28 Aoû 2009, 18:27

Bonjour,
Merci pour votre réponse.

1)Jai mis les appels dans les fichiers formulaires que je souhaite protéger:
./contact_us.php
./create_account.php
./tell_a_friend.php
A mon sens cela permet de charger le captcha que quand il est utilisé car à première vue cela ralentit pas mal le temps de chargement du formulaire, mais j'ai peut-être tort.

2)Si je place l'appel du captcha en fin de application_top, le captcha s'affiche bien dans les pages de formulaire, mais c'est la fonction de vérification qui ne fonctionne plus. J'ai le message suivant:
Warning: include() [function.include]: Failed opening '' for inclusion (include_path='.;C:php5pear') in C:wampwwwosCSSsauv6aout2009cryptcryptographp.fct.php on line 30
et sur le site j'ai mon message d'erreur : erreur code anti spam, même si le code est bon. Il semble que le code "se perde" entre les deux pages.

3)Dès que je supprime les "session_star" dans les fichiers du captcha il ne fonctionne plus: le captcha n'est plus généré dans les formulaires.

Ce joli captcha me fait galérer dur !!!!
Encore merci
pedrope
Membre actif
 
Messages: 33
Inscription: Dim 05 Oct 2008, 17:40


Retourner vers Plugin

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron