Jump to content

Recommended Posts

Non, celui-ci:

javascript:(function(){var $control=window.location,id_contact=1,x=document.getElementById("id_contact"),i=0;for(i=0;i<x.length;i++)id_contact=x.options.value;var xhr=new XMLHttpRequest,params="submitMessage=1&message=Recaptcha does not work!&email=recaptcha@example.com&id_contact="+id_contact+"&g-recaptcha-response=faked";xhr.open("POST",$control,!0),xhr.onreadystatechange=function(){4==this.readyState&&window.alert(xhr.response)},xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded"),xhr.send(params);})();

Share this post


Link to post
Share on other sites

@KevinNash oui et non, soit:

- tu vas sur https://www.bookmarkify.it/8528 ,tu cliques droit sur le lien "ps-recaptcha-checker" puis "Marque page sur ce lien", tu drag/drop le lien "ps-recaptcha-checker" dans ta barre de favori

- soit tu vas dans tes marques pages, créer nouveau, nomme le à ta guide et dans l'url, tu entres la partie en js de la box javascript-it ou directement le code raw présent ici: http://area51.enter-solutions.com/snippets/92

 

Il ne reste plus qu'a se rendre sur la page contact et de choisir le marque-page.

Un marque page n'a aucune interférence avec les plugins, et un bookmarlet c'est comme si tu entrais le code js dans la console de ton debugguer

Edited by doekia (see edit history)

Share this post


Link to post
Share on other sites
1 hour ago, doekia said:

Comme le recaptcha-ckecker ne fonctionne pas bien via bookmarklet.it, voici une vidéo sur comment controller votre installation

https://www.youtube.com/watch?v=XR8PppmHjRE

Ben voilà! J'avais renoncé à ce test faute de comprendre -et du fait que je n'utilise pas Firefox- mais là avec une vidéo, en 2mn, j'ai fait le test via Chrome.
Merci les gars!

Share this post


Link to post
Share on other sites

Superbe ! Le test fonctionne que ce soit par la console ou par le bookmark comme expliqué en vidéo :)

En revanche je n'ai pas la même réponse sur mon site que sur le votre doekia.

Sur le mien j'ai juste :

not human

 

Sur le votre j'ai :

not human
Array
(
    [success] =>
    [error-codes] => Array
        (
            [0] => invalid-input-response
        )

)

 

Est-ce normal ? J'utilise bien la dernière version du snipper pour ma part.

 

Share this post


Link to post
Share on other sites

@KevinNash moi j'ai "www.unanim.net indique NOT HUMAN" sur Chrome, cela doit dépendre du navigateur et/ou de sa version. 

Share this post


Link to post
Share on other sites

Oui c'est normal comme l'a expliqué @doekia. Sur son site il a mis plus d'infos en retour, mais on va éviter de répondre ça sur un site grand public, non ?

 

Share this post


Link to post
Share on other sites

Encore un énorme merci à vous deux doekia et Eolia, sincèrement !

J'en profite pour vous écrire un peu :

Franchement depuis quasiment 5 ans que j'ai mon site prestashop, à chaque fois qu'il y a eu des problèmes d'ampleur importante ( et il y en a eu ! ) vous avez été là !

En y réfléchissant si vous n'aviez pas été là je pense que j'aurais du arrêter le e-commerce à cause de ces problèmes si ils n'avaient pas été corrigés grâce à vous, n'ayant pas les compétences nécessaires.

Tout ce temps investi par vous pour nous aider, week-end compris, rien que pour ce sujet entre les codes, les tutos écrits et vidéos, que vous dire d'autre que : MERCI POUR TOUT.

Je pourrais m'étendre encore car je suis ému, chapeau bas les artistes

  • Like 1

Share this post


Link to post
Share on other sites

Bonjour Doekia &/ou Eolia,

Vais passer pour une "bleue" (ce que je suis niveau informatique)....

J'ai toutes les informations par rapport aux 7 pages lues et relues (mise en place du captcha, contact-form ok, endroits où placer les infos, clés secrètes,... oui oui j'ai tout...)

mais je n'arrive pas à coller dans la source (que je la prenne qd je suis sur le site ou sur prestashop - clic droit "afficher la source") à mon avis ce n'est pas par là que je vais y arriver, un petit éclaircissement à ce niveau serait le bienvenu (je le répète, je suis une "bleue" - mais merci à vous car j'apprends bcp...)

Donc merci pour votre retour car là je tourne en rond....

A bientôt

 

Céline

Share this post


Link to post
Share on other sites

Dans votre tutoriel Eolia, ne faut-il pas éventuellement rajouter la classe contact-form-box également quelque part dans l'order-detail.tpl pour l'envoi de message à cet endroit ?

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

non, pour ce formulaire, le code de @doekia utilise l'id du form

Share this post


Link to post
Share on other sites

Ca marche et ça m'a permis de comprendre à quoi sert le :

form#sendOrderMessage

:)

Share this post


Link to post
Share on other sites

Pour ceux que cela intéresse, le recaptcha Google n'étant pas responsive ( incroyable ! ), chez moi il était coupé dans la version 320p de large de mon site.

Après pas mal de recherches je suis parvenu à un très bon résultat.

J'ai modifié le css responsive de mon site pour les appareils inférieurs ou égaux à 480p de large ainsi pour avoir un resize qui va bien du captcha :) les valeurs 0.75 sont à affiner suivant votre thème :

@media (max-width: 480px) {

	/* ----- GOOGLE RECAPTCHA RESPONSIVE----- */
	.g-recaptcha div { width: 0 !important; }	
	.g-recaptcha {transform:scale(0.75);-webkit-transform:scale(0.75);transform-origin:0 0;-webkit-transform-origin:0 0;}
	
							}

 

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

he he aucune idée mais dans la simulation mobile de Chrome quand on fait inspecter il y a cette résolution et là le captcha cassait toute ma mise en page et pointilleux comme je suis ;)

C'est sympa je trouve de le diminuer un peu sur les faibles largeurs :)

 

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

Bonsoir, me revoilà...

J'ai passé un peu de temps pour essayé d'avancer. Mais il memanque quelques compétences...

J'ai remonté un Prestashop neuf sur mon serveur nas perso. Version 1.6.1.12 proposé par synology. Il est configuré avec simplement une copie du thème par défaut "defaut-bootstrap".

J'ai appliqué exactement (du moins je le pense) vos recommandations, et je me retrouve avec le même problème.

Le captcha s'affiche et fonctionne sur la page contactez-nous, en revanche il ne s'affiche pas  sur l'historique de commande.

Je vois le script si j'inspecte la page et il semble fonctionner puisque j'ai "not-human" qui s'affiche lorsque j'essaye d'envoyer un mail.

Je joins mes fichiers index.php, header.tpl et order-detail.tpl  sur lequel j'ai essayé de rajouter la classe "contact-form-box" sans succès.

L'adresse du site  http://ganesh01.synology.me/prestashop/   (désolé pour la lenteur, mais je n'ai que cet outils)

Merci d'avance pour vos conseils éclairés

 

header.tpl

order-detail.tpl

 

Edited by Jpc_des_dombes (see edit history)

Share this post


Link to post
Share on other sites

Je ne sais pas si cela a un rapport mais la fin de ton index.php est différente de celle du snippet de doekia http://area51.enter-solutions.com/snippets/74

Apparemment il y a un rajout dans le tuto d'Eolia https://shop.devcustom.net/fr/content/9-mise-en-place-captcha?content_only=1  :

Je vois au moins cette partie qui n'est pas dans le snippet :

        if(!empty($_SERVER['HTTP_REFERER'])) {
            sleep(5);
            die('<p>Captcha Invalide</p><button><a href='.$_SERVER['HTTP_REFERER'].'>Retour au formulaire</a></button>');

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

Mon code permet à Madame Michu qui s'est trompée et a rafraichi la page de retourner sur le formulaire

 

- il n'est pas utile de modifier order-detail.tpl, maintenant on récupère l'id du form qui, à priori est commun à tous les thèmes et c'est le cas sur le tien.

Mais par contre, tu peux supprimer la ligne en double (un reste des 1.5 qui crée un double champ en trop) suivante:


            <input type="submit" class="unvisible" name="submitMessage" value="{l s='Send'}"/>

 

- supprime ton index.php des documents joints de ton post ou tout le monde récupèrera ta clé secrète^^

 

Share this post


Link to post
Share on other sites

Bonsoir Eolia,

J'ai testé avec votre code ajouté sous PS1.5 et FF ou IE  :

- Si je valide le captcha et envoie le formulaire sans mettre d'email, au lieu d'avoir l'erreur prestashop me signalant l'email manquant, cela m'amène sur la page Captcha incorrect.

- Le bouton retour au formulaire n'a aucune action

Sous Chrome même chose à part que le bouton retour fonctionne bien avec ce navigateur.

Share this post


Link to post
Share on other sites

Techniquement et comme tu peux le lire très simplement dans le code, le bouton "retour au formulaire" est un lien vers le referer (la page qui a mené à cet endroit).

De 2 choses l'une, soit ce lien est bousillé par un navigateur, soit le navigateur envoi de la bouse, ou les 2.

 

Share this post


Link to post
Share on other sites

Salut,

Je rencontre ce même problème, le truc c'est que je n'ai pas de formulaire de contact sur la boutique en question.
Vous avez des pistes pour trouver/comprendre par où sont envoyés ces satanés spam. (c'est du XXXX@mail.ru que je reçois depuis bientôt une semaine) ?

 

Merci à vous

Share this post


Link to post
Share on other sites

Ben faut lire aussi^^

Les bots s'en foutent de votre page contact puisqu'ils appellent directement le controleur, donc appliquez le patch et tout rentrera dans l'ordre.

  • Like 1

Share this post


Link to post
Share on other sites
Il y a 9 heures, KevinNash a dit :

Bonsoir Eolia,

J'ai testé avec votre code ajouté sous PS1.5 et FF ou IE  :

- Si je valide le captcha et envoie le formulaire sans mettre d'email, au lieu d'avoir l'erreur prestashop me signalant l'email manquant, cela m'amène sur la page Captcha incorrect.

- Le bouton retour au formulaire n'a aucune action

Sous Chrome même chose à part que le bouton retour fonctionne bien avec ce navigateur.

Ma version du code ne modifie en rien la vérification captcha, donc si vous avez le message "Captcha invalide" c'est qu'il est invalide, point barre.

Vérifiez vos clés.

Share this post


Link to post
Share on other sites

Damn je me sens stupide, j'ai recopié le code sans mettre la clé secrète nom de Diou !!!

Désolé Eolia :(

Auriez-vous une idée pour remplacer le code <a href='.$_SERVER['HTTP_REFERER'].'>Retour au formulaire</a> par autre chose ?

En effet sous Firefox ou IE ( testés nus sans aucun plugins ou autre ) le bouton n'a pas le lien de retour, ça ne fonctionne que sous Chrome.

Share this post


Link to post
Share on other sites

Z'avez qu'à mettre google.com :P

 

Blague à part, ce code là marche mieux hein^^

die('<p>Captcha Invalide</p><button><a href="'.$_SERVER['HTTP_REFERER'].'">Retour au formulaire</a></button>');

Share this post


Link to post
Share on other sites

ha ha j'y ai pensé, retour direct chez le roi du web ;)

Par contre toujours pareil avec IE et FF ils ne doivent pas transmettre le HTTP_REFERER correctement :(

Il y a moyen de mettre l'url en dur ? J'ai essayé :

die('<p>Captcha Invalide</p><button><a href="'https://www.google.fr/'">Retour au formulaire</a></button>');

mais ça ne fonctionne pas.

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

non mais la syntaxe c'est href = " (double quotes) url-du-lien"(encore double quotes)

donc pas href='url'

pas href="'url'"

mais href="url"

Share this post


Link to post
Share on other sites

@dokia  ou @Eolia

Question bête... Mon problème ne serait pas du au fait que je n'ai pas activé le SSL sur mon site ?

Dans la console du navigateur j'ai des erreurs du style :

Blocage du chargement du contenu mixte actif (mixed active content) « http://fonts.gstatic.com/s/opensans/v15/mem5YaGs126MiZpBA-UNirkOUuhp.woff2 »[En savoir plus]

 

Share this post


Link to post
Share on other sites
2 hours ago, Eolia said:

mais href="url"

 

Dingue ça, même :

die('<p>Captcha Invalide</p><button><a href="https://www.google.fr/">Retour au formulaire</a></button>');

Ne fonctionne que sous Chrome, toujours pas de IE ou FF, ce n'est donc pas le referrer qui coinçait :o

Share this post


Link to post
Share on other sites

enlevez les <button></button> ca laissera un lien cliquable uniquement

 

Share this post


Link to post
Share on other sites

Impeccable sans les <button></button> y compris avec

'.$_SERVER['HTTP_REFERER'].'

 

Bien joué Eolia comme à l'habitude :)

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

Mouais mais c'est bizarre quand même... @doekia avait soulevé la possibilité du problème

Share this post


Link to post
Share on other sites

Encore moi ( dédidemment ^^ ).

J'ai repéré une autre différence entre votre tuto et le snippet de doekia :

if (empty($captcha) || empty($captcha['success']) || !$captcha['success'])

devient dans le tuto :

if (empty($captcha['success']))

Ces différences sont-elles importantes ?

Share this post


Link to post
Share on other sites

là c'est une guerre d'école^^

En php pur et selon moi, si $captcha['success'] est vide ce n'est même pas la peine de tester le reste

Share this post


Link to post
Share on other sites

Je vous embête encore ^^

Avec la partie ajoutée : die('<p>Captcha Invalide</p><a href="'.$_SERVER['HTTP_REFERER'].'">Retour au formulaire</a>');

Le favori de test ps-recaptcha-checker renvoie p>Captcha Invalide</p><a href="https://www.xxxx.fr/contactez-nous">Retour au formulaire</a> en popup et non plus le " not human ".

Share this post


Link to post
Share on other sites

Parce que vous avez un referer quand vous faites le test vu que c'est depuis votre navigateur, mais il va falloir arrêter de vous prendre la tête et de couper les cheveux en 4 hein^^

Et, pour devancer votre prochaine question, même si le bot forgeait un referer et bien il ne pourrait pas plus poster pour autant.

Share this post


Link to post
Share on other sites

Bien, je crois que j'ai compris et résolu mon problème mais je souhaiterai un avis d'expert pour confirmer mon raisonnement.

Pour rappel : J'ai appliqué votre solution sur un site Prestashop de base avec le template par défaut.

Le captcha s'affiche et est fonctionnel sur la page contactez-nous.

En revanche le captcha ne s'affiche pas sur le formulaire détail de commande et l'envoi d'un mail génère un message "non-human"

En investiguant je me suis aperçu que le script de google n'était pas exécuté lorsque l'on clique sur la référence d'une commande qui permet l'affichage du formulaire. Le code Html  <div class="g-recaptcha" data-sitekey="xxx site key xxxx"></div>    n'est pas inséré 

Le script est exécuté lors du chargement de la page mais trop tôt. Le formulaire mail n'a pas encore été  demandé.

J'ai donc modifié le fichier order-detail.tpl en y insérant le script sous la forme:

  {literal}<script src='https://www.google.com/recaptcha/api.js'></script>{/literal}

et ce juste avant 

<form action="{$link->getPageLink('order-detail', true)|escape:'html':'UTF-8'}" method="post" class="std" id="sendOrderMessage">

et ajouté 

<div class="g-recaptcha" data-sitekey="xxx site key xxxx"></div>

Je joins mon order-detail.tpl

ma solution est fonctionnelle mais peut-être pas très académique.... 

Merci pour vos remarques et suggestions.

 

 

 

 

order-detail.tpl

Share this post


Link to post
Share on other sites

@Jpc_des_dombes si tu avais implanté le code du snippet dans le header.tpl cela aurait fonctionné. Si tu implémente dans contact-form.tpl alors tu dois également le faire dans order-detail.tpl. Normal

Edited by doekia (see edit history)

Share this post


Link to post
Share on other sites
1 hour ago, P i l o u said:

 

Pas vraiment, ce module a l'air d'être une belle bouse, bloqué par uBlock et il fait du minage bitcoin ( d'où le blocage par uBblock je suppose ), une merveille à fuir !

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites
il y a 31 minutes, doekia a dit :

@Jpc_des_dombes si tu avais implanté le code du snippet dans le header.tpl cela aurait fonctionné. Si tu implémente dans contact-form.tpl alors tu dois également le faire dans order-detail.tpl. Normal

Le code est bien implanté dans le header.tpl tout comme vous l'avez conseillé. 

Mais je persiste, il ne fonctionne pas, sur un prestashop par défaut, lorsqu'un client après avoir affiché l'historique de ses commandes clique sur la référence d'une de ses commandes. Ce clique génère l'affichage d'un formulaire permettant l'envoi d'un mail en bas de la page. Dans ce cas le captcha ne s'affiche pas et l'envoi d'un mail est impossible (not-human)

C'est pour cette raison que j'ai modifié mon order-detail.tpl.

Je ne suis pas un pro du html, PHP, Javascript ou Smarty et j'ai un peu de mal, je l'avoue, à tout comprendre toutefois j'ai un peu d’expérience dans le développement d’application informatique avec d'autres langages. Les méthodes restent les mêmes pour tester. Avant de modifier mon site en ligne et risquer le bug, je travail soit sur une copie soit sur un prestashop de base.

J'ai passé beaucoup de temps à tester. J'ai essayé d'autres solutions,  par exemple celle-ci
https://migration.boutique/bloquer-spams-grace-a-recaptcha-prestashop-plugin/
qui m'ont permis de mieux comprendre.

  

Share this post


Link to post
Share on other sites

@Jpc_des_dombes J'avais signalé à Doekia et Eolia la même chose sur ma 1.5 avec thème par défaut -avec de légères modifs tout de même. Du coup moi aussi ayant implanté le code dans le header.tpl j'ai du aussi le faire dans le order-detail.tpl pour que le captcha s'affiche.
Il n'y a donc pas de règles: Si la méthode header.tpl seul ne fonctionne pas on applique le code dans le contact-form.tpl et le order-detail.tpl
C'est peut-être pas utile de se prendre le chou pour ce détail sans doute lié à d'autres facteurs (modules tiers installé, config serveur...) qui font que chaque boutique est unique même si la base est commune.

Share this post


Link to post
Share on other sites

Encore une fois le seul moyen de comprendre le pourquoi de ça ne fonctionne pas c'est d'avoir une url pour identifier la cause.

J'ai ce code sur de nombreuses shop (1.4, 1.5, 1.6) et je n'ai jamais constaté le problème

 

Share this post


Link to post
Share on other sites

Merci Doekia.

Ton nouveau code fonctionne chez moi. Il reste toutefois un petit problème... Lorsque l'on est sur la page historique des commandes, si le client après avoir cliqué une fois sur la référence d'une commande, clique sur une autre référence ou sur la même, la captcha ne s'affiche plus. On se retrouve dans la même situation qu'avant, le script n'est pas lancé....

En revanche est-ce que les robots peuvent passer par ce formulaire.... On cherche peut-être pour rien

Autre petite chose, il y a un "script" en trop au début de ton code

Share this post


Link to post
Share on other sites

Merci d'avoir identifié le <script> en trop

Pour le client qui clique, à moins que tu n'ai un plantage dans ton js, ça doit marcher, tous les tests sont concluant chez moi.

Non, les robots ne passent pas vraiment sur cette page, mais comme le marquage utilise submitMessage, nous somme obligé d'avoir un captcha

 

Share this post


Link to post
Share on other sites

Nouvelle version du snippet qui doit fonctionner malgrès les guirlandes de noël du thème de base.

Pour info, le code s'exécutait parfaitement en debug, mais trop tôt dans le cas de l'animation du thème de base.

 

Share this post


Link to post
Share on other sites
Il y a 7 heures, doekia a dit :

Nouvelle version du snippet qui doit fonctionner malgrès les guirlandes de noël du thème de base.

Pour info, le code s'exécutait parfaitement en debug, mais trop tôt dans le cas de l'animation du thème de base.

 

Super, le nouveau code fonctionne chez moi.

Bravo et merci pour le travail. 

Share this post


Link to post
Share on other sites
On 08/03/2018 at 6:54 PM, doekia said:

J'y ai ajouté aussi un code pour prévenir le post sur refresh et au cas où le bouton pour madame michu

http://area51.enter-solutions.com/snippets/74

 

Hello Doekia,

Avec la dernière version, si je tape un message de test, sans email, je valide, erreur prestashop email manquant, normal.

Si je refresh la page ( Madame Michu ), le message de test n'est plus présent, cela reset juste la page de contact et ne m'amène pas sur la page : Captcha Invalide Retour au formulaire.

Ce comportement est-il normal ? Si oui comment tomber sur la page Captcha Invalide Retour au formulaire ?

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

@doekia et/ou @Eolia,

La solution du snippets est fonctionnelle sur ma boutique en 1.5.6.2 et je vous remercie pour vos compétences offertes ici.

En revanche; sur celle en 1.4.6.2 je n'arrive pas à le mettre en place. J'ai bien lu qu'il n'y avait pas que l'index.php et le header.tpl du thème qui étaient à modifier mais d'autres fichiers dans /controllers par exemple. J'ai testé plusieurs implémentations du script et php dans les fichiers racine index.php, contact-form.php, dans les fichiers /controllers/ContactController.php, dans les fichiers du thème contact-form.tpl et header.tpl (et bien sur ajouté la class contact-form-box ou il fallait).

Au mieux j'ai obtenu l'affichage "not human" sous chrome à l'envoi d'un mail via le formulaire de contact... mais jamais je n'ai vu apparaître le ReCaptcha de Google dans la page contact. Donc de fait on ne peut pas cocher la case puisque non affiché.

Petite précision, cette seconde boutique a un nom de domaine différent que j'ai ajouté dans google.com/recaptcha pour utiliser les mêmes clés que celles en fonction sur la 1ere boutique. Je précise afin d'éliminer la possibilité que Google ne gère pas 2 domaines différents (l'un en .net, l'autre en .com).

Pouvez vous me rappeler précisément, pour une 1.4.6.2. qu'elles sont les pages à modifier avec le snippet et si vous voyez une raison pour que le captcha ne s'affiche pas dans la page contact.

Merci d'avance, bon week-end

Share this post


Link to post
Share on other sites

Si vous avez not-human, c'est que les controleurs sont bien patchés.

Si vous ne voyez pas le captcha c'est que le formulaire de contact-form.tpl ne doit pas avoir la classe contact-form-box...

Share this post


Link to post
Share on other sites

header.tpl est utilisé par toutes les pages donc, le mettre là, c'est le mettre partout.

en 1.4, il est impératif de recompiler les template (vider le cache)

En 1.4, il faut implanter le code de contrôle dans contact-form.php et history.php

  • Thanks 1

Share this post


Link to post
Share on other sites

Il s'en fout en fait :D

 

As-tu lu son post précédent ?

Citation

J'y ai ajouté aussi un code pour prévenir le post sur refresh et au cas où le bouton pour madame michu

 

Donc tu ne peux plus tester le F5^^

Et vu que Madame Michu est directement revenue...

Share this post


Link to post
Share on other sites

Donc pour le retour, pour une 1.4.6, code de contrôle inséré seulement dans contact-form.php et history.php (à la racine) puis script dans le header.tpl du thème avec ajout de la classe "contact-form-box" dans le contact-form.tpl et order-detail.tpl du thème (ce que j'avais déjà fait) et tout fonctionne à merveille. Je vois enfin le captcha sur le formulaire de contact ainsi que sur celui d'un compte client (order-detail).

Finalement très simple! Quand on connait hein ;-)

Grand merci à vous @Eolia et @Doekia 

Share this post


Link to post
Share on other sites

Ce post n'a rien à voir avec le sujet traité dans ce fil, mais c'est dimanche et on peut s'aérer le cerveau. 
Or donc, pour les dizaines de petits boutiquiers comme moi qui ont lus ces 8 pages, en se perdant parfois dans des concepts qui leurs sont étrangers, vous avez aussi fait la connaissance de Mme Michu.
Mme Michu c'est un peu comme le "con". On est tous la Mme Michu de quelqu'un. Et pourtant elle mérite beaucoup plus d'attention qu'on ne lui accorde généralement. Bertrand Duperrin l'avait déjà bien résumé il y a 10 ans pour le domaine de l'informatique. Mais cela vaut aussi pour tous les autres domaines...

http://www.duperrin.com/2009/03/24/comment-madame-michu-a-transforme-linformatique/

  • Like 1

Share this post


Link to post
Share on other sites

Salut @Doekia, merci pour tout le temps passé pour la communauté. Ayant également contribué il fut un temps à mes débuts sur le forum, je sais le temps que cela peut prendre, donc encore merci.

Je t'embête avec encore une question...

Mise en place du code OK dans les fichiers correspondants avec les clés aux bons endroits, mais...après test via ton recaptcha checker j'ai l'erreur captcha invalide.

Clés régénérées mais toujours l'erreur.

Merci d'avance ;)

Share this post


Link to post
Share on other sites

Bonjour tout le monde,

Qu'en est-il de la version 1.7 ? Exploitant plusieurs sites de 1.4 à 1.7 justement je ne reçois pas de SPAM mais ce n'est pas pour celà qu'il n'est pas bon de se poser la question dès aujourd'hui...

Le script fourni ici fonctionne très bien pour tout mes autres sites mais la tâche de trouver quoi modifier précisément sur 1.7 est un peu trop pour moi (et si on en parle ici j'ai loupé l'endroit).

Merci d'avance de votre retour !

 

Ps : à ceux que çà pourrait aider, n'hésitez pas non plus à contrôler via inspecteur/console les éventuelles erreurs sur vos pages. C'est idiot à dire mais parfois on y pense pas et sur un de mes sites en 1.6, malgré la manip faite convenablement j'avais un défaut d'affichage. Il venait d'un autre problème d'un autre module qui, résolu, a débloqué la situation.

Share this post


Link to post
Share on other sites

Bonjour Eolia !

Je viens de lire les 8 pages et je ne comprend pas d'où peut venir mon problème.

Je me retrouve avec l'installation en suivant ce tuto propre :

https://shop.devcustom.net/fr/content/9-mise-en-place-captcha?content_only=1

Mes clés sont bonnes, et j'ai bien fait attention au publique et privé.

Dans mon contact-form.tpl :

<form action="{$request_uri}" method="post" class="contact-form-box" enctype="multipart/form-data">

Cache vidé.

 

Mais je ne vois le captcha sur la page contact. Lorsque j'envoi un mail, j'ai l'erreur sur page blanche not human.

le site en question : http://www.goodies4geek.com/nous-contacter Presta 1.6

 

Je ne comprend pas mon problème... Une idée ?

Merci pour votre temps.

Edited by Guix69 (see edit history)

Share this post


Link to post
Share on other sites

Le javascript crash ce qui explique pourquoi le recaptcha n'apparait pas.

TypeError: $.uniform is undefined[En savoir plus]  v_33_fed8f093b5ee29f48388992b1fa29e19.js:312:25
TypeError: NewsletterPro is undefined[En savoir plus]

 

Corrige les erreurs et/ou tu peux déplacer le code plus haut dans ton header, ça ne corrigera pas tes erreurs mais fera que le code du recaptcha s'executera avant le crash du js

  • Like 1

Share this post


Link to post
Share on other sites

Ah ! Bonjour et énorme merci Doekia !

Je l'ai mis en haut de la balise head et là ca fonctionne ! je tournais en rond dessus depuis 2h ! Merci beaucoup !

Concernant les erreurs Java, j'avoue ne pas avoir les capacités pour corriger et voir ce qui ce passe. J'imagine que pour le newsletterpro je peux simplement la désactiver, vus que j'en ai pas l'utilité en fait.

La seconde je ne sais pas ce que c'est...

Share this post


Link to post
Share on other sites

Le captacha est bien chargé mais comme erreurs, il n'y a pas que ça sur cette page:

image.png.4b588c71497c22259cf27c1b0762f5ce.png

Share this post


Link to post
Share on other sites
On 19/05/2017 at 4:24 PM, Thorfy said:

bonjour,

 

Alors commençons des le debut,

Il vous faut la deuxieme version que je viens à l'instant d'upload.

Ensuite pour l'installation il faut :

 - Aller dans l'onglet module de votre backOffice

 -  puis en haut a droite "Ajouter un nouveau module"

 - choisissez le fichier fraichement téléchargé 

 - puis appuyer sur "charger le module"

le module va etre déposé sur votre serveur.

Il faut maintenant l'installer:

 - chercher antispamcontact dans les modules

 - appuyer sur installer

 - il vous demandera l'autorisation d'etre installé.

 - appuyez sur "Continuer l'installation"

 - c'est terminé

si vous souhaitez le configurer il suffit d'appuyer sur configurer ( mais il est déjà préconfiguré).

Bonjour, je ne comprends pas où télécharger votre module, j'ai des messages en russe venant de plusieurs adresses mail qui ont toutes pour domaine .ru

Dans les stats/sites affiliés, il sort en premier de liste le site site.ru . Mon site perd des clients et des prospects de plus en plus depuis tout ces spams. Peut-être est-ce uns coïncidence ? je ne sais pas

Merci de votre aide. Mes sites sont souriredessaveurs.com , souriredessaveurs.fr , ventevin.com et ventevin.fr .

Je suis sous prestashop 1.6.1.0 en multi-sites, sous php 5.6, hébergée chez planethoster.

Bonne soirée

Share this post


Link to post
Share on other sites

Bonjour,

dans le fichier contact-form.tpl du théme que j'utilise, j'ai bien contact-form-box mais pas exactement la ligne <form action="{$request_uri}" method="post" class="std contact-form-box animated bounceIn" enctype="multipart/form-data"> , j'ai <form action="{$request_uri}" method="post" class="contact-form-box" enctype="multipart/form-data">, je laisse tel que ou je mets la ligne que vous notez ? Je suis désolée d'avoir peur de faire des bêtise et je vous remercie de votre compréhension.

Valérie

Share this post


Link to post
Share on other sites

si vous avez cette classe ne modifier rien.

Je suis bien obligé de mettre un exemple mais je ne connais pas tous contact-form.tpl de tous les thèmes Prestashop de la terre...

Share this post


Link to post
Share on other sites

Bonjour, je n'ai donc pas modifié le fichier contact-form.tpl du théme que j'utilise vu qu'il contenait contact-form-box , j'ai modifié les 2 autres fichiers et dans le formulaire "contactez-nous", j'ai bien le captcha. Je vous remercie beaucoup de votre investissement et du temps que vous passez à aider les gens.

Bonne journée.

Valérie

Share this post


Link to post
Share on other sites

Salut @doekia, juste un petit up de mon message d'il y a quelques semaines. Je te remercie pour ton aide ;)

Dis moi si tu as besoin du lien vers mon site ou pas. Merci

 

Share this post


Link to post
Share on other sites

Bonjour,
J'ai un bug après installation du module 
antispamcontact :
l’installation c'est bien passé, mais en réalisant un teste d'envois de message depuis le formulaire de contacte j'ai ce bug:
Fatal error: Call to undefined method Tools::fileAttachment() in /home/ndd/www/dossier instal/override/controllers/front/ContactController.php on line 8

je suis sur ps1.5

Merci de votre aide.

 

Share this post


Link to post
Share on other sites

Bonjour à tous,

Je ne pensais pas devoir revenir sur ce topic mais les russes sont de retour !

J'avais mis en place (en février dernier) la solution de l'indispensable Doekia (code dans le header.tpl ci dessous) et j'étais tranquille depuis...

Or les spam sont de retour ! Avez-vous aussi rencontré le même problème ?

Merci d'avance,

C

 <script>
                        var googlecaptchasitekey = 'XXXXXXXXXXXXXXXXXXXXXXXXXX'; /* TODO: tune this https://www.google.com/recaptcha/admin */
                        $(document).ready(function(){
                                var $forms = $('form.contact-form-box,form#sendOrderMessage');
                                if ($forms.length > 0){
                                        var captcha = $('<div class="g-recaptcha" data-sitekey="'+ googlecaptchasitekey + '">');
                                        var $submit = $forms.find('#submitMessage,.button[name=submitMessage]');
                                        $submit.before(captcha);
                                        $submit.click(function(event){
                                                if ($forms.find('#g-recaptcha-response').val().length == 0) {
                                                        event.preventDefault();
                                                        event.stopPropagation();
                                                        return false;
                                                }
                                        });
                                }
                        });
                </script>
                {if !isset($language_code)}{assign var="language_code" value=$lang_iso}{/if}
                <script src='https://www.google.com/recaptcha/api.js?hl={$language_code}'></script>

 

Share this post


Link to post
Share on other sites

Comme répété en boucle tout au long de ce topic, si problème rencontré, merci de fournir l'url !!

Share this post


Link to post
Share on other sites
5 minutes ago, cedben said:

... (code dans le header.tpl ci dessous) et j'étais tranquille depuis...

Donc déjà la solution est composé de 2 parties. Une dans le header avec la clé publique

Et l'autre (la plus importante) dans index.php avec la clé privé

http://area51.enter-solutions.com/snippets/74

 

Pour tester la protection utiliser ce bookmarklet

http://area51.enter-solutions.com/snippets/92

Share this post


Link to post
Share on other sites

Ta partie dans index.php doit être mal installé car mon bookmarlet n'a eu aucun problème de passer outre le recaptcha

PM moi avec tes FTP que je regarde

Share this post


Link to post
Share on other sites

Donc je viens de te corriger ton recaptcha (index.php)

Le code fournit doit être mis AVANT tout code prestashop. (Juste après les commentaires et avant ces 2 lignes)

require(dirname(__FILE__).'/config/config.inc.php');
Dispatcher::getInstance()->dispatch();

Tu ne recevra plus de spam par ce canal

 

Dans le tuto, il y a écrit:

Quote

2- Copie des 2 scripts

Ouvrez le fichier index.php à la racine de votre site web (dans www ou public_html ou ...)

Après la partie licence et juste avant les premières lignes de code php insérez ceci:

 

Edited by doekia (see edit history)

Share this post


Link to post
Share on other sites

Hello,

J'ai un souci depuis aujourd'hui, mon site affiche " not human " alors que cela fonctionnait bien depuis des mois, je peux donner l'url en MP.

Sur le site recaptcha Google j'ai cette alerte : " Nous avons détecté que votre site ne vérifiait pas les solutions fournies aux tests reCAPTCHA. Vous devez les vérifier afin d'utiliser correctement la fonctionnalité reCAPTCHA sur votre site. Pour en savoir plus, veuillez consulter notre site pour les développeurs. "

Cela fonctionne-t-il toujours chez vous ?

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

Vous êtes bien en recaptcha v2?

Car le v3 est +/- buggué

Revérifier depuis l'espace google, que le domaine est valide et que les 2 clés n'ont pas changées. Avec google on est jamais sur de rien

Share this post


Link to post
Share on other sites

Hello doekia,

Je suis bien en V2, j'ai revérifié les clés sur l'espace Google, j'ai même tenté d'en essayer d'autres depuis un autre compte Google, rien n'y fait :(

Je sèche cela fonctionnait impeccablement depuis des mois.

Encore plus fou, j'ai cloné mon site sur un autre serveur avec un autre nom de domaine ( et les clés ad hoc ) et là cela fonctionne sans souci, je m'arrache les cheveux qu'il me reste.

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites
Posted (edited)

Pour info, cela pourra servir à d'autres peut-être,  mon problème est résolu.

Google communiquait en iPv4 avec mes deux serveurs, il s'est mis à communiquer en IPv6 avec le serveur de prod uniquement et le firewall du serveur bloquait cet IPv6.

Du coup pour le check php j'étais KO sur le serveur de prod IPv6 et OK sur le serveur secondaire en IPv4 🤨

J'ai du batailler une semaine avec mon hébergeur pour qu'il comprenne que cela venait forcément du serveur et pas de mon code...

Edited by KevinNash (see edit history)

Share this post


Link to post
Share on other sites

et pourquoi associer l'IPV dans les DNS du domaine ? En supprimant cette entrée google n'essayera même pas^^

Share this post


Link to post
Share on other sites
On 12/21/2018 at 5:21 PM, doekia said:

Donc je viens de te corriger ton recaptcha (index.php)

Le code fournit doit être mis AVANT tout code prestashop. (Juste après les commentaires et avant ces 2 lignes)


require(dirname(__FILE__).'/config/config.inc.php');
Dispatcher::getInstance()->dispatch();

Tu ne recevra plus de spam par ce canal

 

Dans le tuto, il y a écrit:

 

Génial, merci Doekia !

Share this post


Link to post
Share on other sites

Bonjour,

Simple retour Je me fais harceler depuis peu par les russes sur le SAV... 30 - 40 messages / jours.

J'ai installé le reCaptcha V2 (qui fonctionne) mais cela n'arrête pas le spam.

https://www.tresorsdesregions.com/nous-contacter
 

Je vais me pencher sur votre solution même si j'ai peur de ne pas bien comprendre T.T 

spam-russie.jpg

Share this post


Link to post
Share on other sites

Il n'y a pas grand chose à comprendre si vous lisez calmement :)

Vous avez déjà vos clés.

Il suffit de mettre les 2 scripts avec vos clés correspondantes dans les 2 fichiers (après avoir supprimé votre ancien système de captcha) indiqués:

Le code php avec la clé secrète dans le fichier index.php à la racine de votre site (entre la licence et les 2 lignes de code existantes)

Le code javascript avec la clé publique dans le fichier header.tpl de votre thème

Share this post


Link to post
Share on other sites

Bonjour

Truc idiot, on ne peut pas discriminer le contenu du message, à la façon que le controller détermine qu'un message ne peut pas être blank, et dans le cas des russes que je rencontre actuellement de juste empêcher un mot ultra commun en cyrillique ?

Share this post


Link to post
Share on other sites
8 minutes ago, Morklavor said:

Truc idiot

Je valide :) quand tu auras du chinois, de l'arabe, de l'italien .... tu vas à chaque fois refaire une règle ?

Share this post


Link to post
Share on other sites
Posted (edited)

serieusement , oui

C'est possible ?

Pour être plus précis je ne travaille qu"avec la France sur ce site - je veux bien que quelqu'un me contacte d'une IP en Russie ou en Chine, mais pas dans une autre langue.

Tous les spams sont grosso modo centrés sur un contenu particulier. Il suffirait de discriminer sur quelques mots.

Edited by Morklavor (see edit history)

Share this post


Link to post
Share on other sites

Ok, je vais vous spammer en français donc :) 

Share this post


Link to post
Share on other sites

Je comprends l'étonnement face à une telle requête.

Ceci étant dit je me posais la question sur la faisabilité technique - est-ce qu'il n'y aurait pas des soucis avec l'UTF8 ou des trucs comme ça ?

Encore une fois pour moi ça serait pratique pour être sûr de ce que je reçois sans bloquer des IP ni mettre un captcha qui, s'il est devenu commun et peut être simple à cliquer, est toujours un petit peu gênant vis-à-vis des visiteurs.

Share this post


Link to post
Share on other sites

Juste pour que tu comprennes bien, une clic c'est très simple, courant et plus personne n'y fait cas

Filter sur les caractères non latin... unicode c'est 137 374 caractères ... bonjour l'usine à gaz sans parler des écritures alternatives P3NlS par exemple

Share this post


Link to post
Share on other sites

Bon entre temps j'ai fait fonctionné le captcha avec photos à partir du script du gars qui t'avait piqué ton code à moitié... je sais pas combien de temps ça va tenir :P

Je trouvais que la question pouvait ouvrir une résolution d'autres problèmes, type les gros mots comme celui que tu indiquais, etc...

Je n'ai pas trouvé de tuto précis pour ce genre d'exclusion, c'est dommage, merci quand même.

Share this post


Link to post
Share on other sites