Jump to content

Recommended Posts

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
Link to comment
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

Link to comment
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)
Link to comment
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)
Link to comment
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)
Link to comment
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^^

 

Link to comment
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.

Link to comment
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.

 

Link to comment
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 [email protected] que je reçois depuis bientôt une semaine) ?

 

Merci à vous

Link to comment
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.

Link to comment
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.

Link to comment
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)
Link to comment
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

Link to comment
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 ?

Link to comment
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 ".

Link to comment
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.

Link to comment
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

Link to comment
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)
Link to comment
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.

  

Link to comment
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.

Link to comment
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

 

Link to comment
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

Link to comment
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

 

Link to comment
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.

 

Link to comment
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. 

Link to comment
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)
Link to comment
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

Link to comment
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
Link to comment
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...

Link to comment
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 

Link to comment
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
Link to comment
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 ;)

Link to comment
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.

Link to comment
Share on other sites

  • 2 weeks later...

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)
Link to comment
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
Link to comment
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...

Link to comment
Share on other sites

  • 2 weeks later...
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

Link to comment
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

Link to comment
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

Link to comment
Share on other sites

  • 8 months later...

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.

 

Link to comment
Share on other sites

  • 2 weeks later...

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>

 

Link to comment
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

Link to comment
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)
Link to comment
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)
Link to comment
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)
Link to comment
Share on other sites

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)
Link to comment
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 !

Link to comment
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

Link to comment
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

Link to comment
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 ?

Link to comment
Share on other sites

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)
Link to comment
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.

Link to comment
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

Link to comment
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.

Link to comment
Share on other sites

Salut a tous et bonne année 2019.
J'ai deja mis mon probleme sur un autre post, mais je crois qu'ici c'est plus actif, donc je le repost.
J'ai installé Recaptcha V2 la semaine dernière grâce au script de doekia et Eolia - (merci d'ailleurs a eux d'avoir fait le boulot).
Depuis, le spam a changé mais n'a pas stoppé.
En effet, 1ere différence : le contenu du message :

Adresse e-mail du client : [email protected]

Message du client : Добрый вечер.

Если вы читаете данный текст, значит Ваш почтовый ящик был выбран среди несколько сотен везунчиков, которым выпал шанс получить материальное вознаграждение.

УЗНАТЬ СУММУ ВОЗНАГРАЖДЕНИЯ

-----

la dernière ligne de texte en russe étant un lien.
2 eme différence :
Toutes les adresses d’expéditeurs sont en gmail.com

J'ai lu quelque part que les spammeurs avaient un moyen de bypasser Recaptcha en prélevant la clé du site et en soumettant une demande a google sans "referer" ce qui permettrait d'avoir une vrai bonne réponse de google  . On sait que recaptcha est étroitement lié au compte google. Donc je me demande si mon problème de spam en gmail ne vient pas de la...
Si vous avez une idee, je suis preneur .
Merci d'avance.
SpaceMoO

Link to comment
Share on other sites

Hier après avoir mis le captcha avec photos, je pensais que c'était réglé.

Puis j'ai eu deux e-mails dans la soirée, sans alphabet cyrillique, et sans sens particulier. Comme si le spammeur tâtonnait.

Puis dans la nuit bam 400 spams du même type en cyrillique... Par contre le mot que je pensais blacklister quand j'ai fait ma requête hier n'apparaît pas dans le message retranscrit par spacemoo.

J'en reviens à demander si vous pouvez nous mettre quelques lignes de code nécessaires à faire un blocage par mot s'il vous plaît. Quand on se fera spammer en austro-hongrois on avisera :)

Ah et j'ai désactivé avec un petit plugin le formulaire de contact pour le moment, dommage que Presta soit victime de son succès :/

Edited by Morklavor
rajout (see edit history)
Link to comment
Share on other sites

Bonjour Eolia et merci pour votre aide.
Effectivement, les Emails on été envoyé APRES la date d 'installation du script.
Le script a été installé le 05/01/2019 et dans le BO je vois l'envoi des Emails en Gmail.com le 06/01/2019 et le 08/01/2019.
Cordialement,
SpaceMoO.

Link to comment
Share on other sites

@Eolia @doekia

oui l'adresse est correcte.
Pour l'envoi des mails, je parle dans le back office, menu PARAMETRES AVANCES->EMAIL

il y a ces colonnes  :
ID,  Destinataire, Modele,  Langue, sujet, envoyés
je parle ici de la colonne "envoyé" pour la date d'envoi.
Le spam vient bien du formulaire de contact.
Cordialement,
SpaceMoO

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...