jschm Posted February 15, 2018 Share Posted February 15, 2018 Hi zusammen, der Titel sagt schon alles - ich würde (aufgrund einer aktuellen SPAM Welle) einen Captcha ins Kontaktformular einbauen. Habe bisher aber nur "alte" Beiträge gefunden bzw ein kostenpflichtiges Modul. Mir ist etwas schleierhaft wie so eine Basisfunktion nicht einfach "nachzurüsten" ist, oder gibts doch eine schöne Lösung? Danke vorab! Link to comment Share on other sites More sharing options...
Whiley Posted February 15, 2018 Share Posted February 15, 2018 welche PS-Version? Link to comment Share on other sites More sharing options...
jschm Posted February 15, 2018 Author Share Posted February 15, 2018 sorry, hatte es noch in der Zwischenablage: 1.6.1.12 Link to comment Share on other sites More sharing options...
Whiley Posted February 15, 2018 Share Posted February 15, 2018 Da könntest du nach Google Anleitung vorgehen und den Code eingeben oder einfacher das kostenlose eicaptcha installieren: Das findest du bei github oder du nimmst die hier angehängte installierfähige Version: eicaptcha.zip Grüsse Whiley Link to comment Share on other sites More sharing options...
jschm Posted February 15, 2018 Author Share Posted February 15, 2018 21 minutes ago, Whiley said: Da könntest du nach Google Anleitung vorgehen und den Code eingeben oder einfacher das kostenlose eicaptcha installieren: Das findest du bei github oder du nimmst die hier angehängte installierfähige Version: eicaptcha.zip Grüsse Whiley Welche Google Anleitung mit Code meinst Du denn? Mit eicaptcha hat es jetzt aber geklappt, dachte das wäre mittlerweile veraltet, dank dir! Link to comment Share on other sites More sharing options...
Shad86 Posted February 16, 2018 Share Posted February 16, 2018 Ich nehme an er meint das hier von Google: https://www.google.com/recaptcha/intro/invisible.html Ist auch mein Favorit wenn bei uns mal Spam losgehen sollte. Link to comment Share on other sites More sharing options...
eleazar Posted February 16, 2018 Share Posted February 16, 2018 Also dann mal ins Detail! Das Modul Eicaptcha, dass @Whiley empfohlen hat, wirkt zwar auch bei Produktkommentaren, aber leider nicht beim Kontaktformular! Wenn man das invisible Recaptcha von Google für Anmelde- und Kontaktformular nutzen will, dann muss folgendes passieren: Aufruf des bereits von @Shad86 genannten Links: https://www.google.com/recaptcha/intro/invisible.html Oben rechts auf den Button Get Recaptcha klicken und den Anweisungen folgen. Die Auswahl treffen, ob das Recaptcha überhaupt angezeigt werden soll oder nicht. Den erzeugten Websiteschlüssel kopieren. Anschließend müssen folgende Dateien angepasst werden: Frontcontroller (am besten via Override): AuthController.php ContactController.php Beide Overrides sind in der Zip-Datei unten enthalten. Falls bereits Overrides einer der Dateien im Verzeichnis /override/controllers/front existieren, dürfen diese nicht überschrieben, sondern nur um die hier übermittelte Funktion ergänzt werden. Template-Dateien: authentication.tpl contact-form.tpl Für das Standard-Template sind bereits angepasste Dateien in der folgenden Zip-Datei enthalten. Für eigene Templates muss an der entsprechenden Stelle der folgende Code eingefügt werden. Hierhin wird der Websiteschlüssel kopiert (rot markiert!): <!-- Add Google Recaptcha --> <div> <script src='https://www.google.com/recaptcha/api.js'></script> <div class="g-recaptcha" data-sitekey="DeinPersönlicherGoogle-Key"></div> </div> <!-- end --> Das Sahnehäubchen wäre dann noch, die neue Fehlermeldung gleich einzudeutschen, die ihr unter Lokalisierung --> Übersetzungen --> Fehlermeldungen findet: Captcha Error --> Bitte bestätigen Sie, dass Sie "keine Roboter" sind (oder so etwas) und wahrscheinlich auch die Meldung darunter, die nun eventuell einen anderen Hashcode bekommen hat. Hier habe ich alle Modifikation als Zip-Datei vorbereitet: Google recaptcha for PrestaShop 1.6.zip Falls jemand PrestaShop 1.5 nutzt, so kann er die Änderungen ebenfalls in die entsprechenden Dateien einbauen, sollte aber auf die leichten Unterschiede in den Controllern achten. Link to comment Share on other sites More sharing options...
Whiley Posted February 16, 2018 Share Posted February 16, 2018 Am 16.2.2018 um 6:04 PM schrieb eleazar : Das Modul Eicaptcha, dass @Whiley empfohlen hat, wirkt zwar auch bei Produktkommentaren, aber leider nicht beim Kontaktformular! Das Modul eiCaptcha wirkt (von mir getestet mit PS 1.6.1.18 und TB 1.03 ) u.a. auch beim Kontaktformular: https://github.com/nenes25/eicaptcha/blob/master/README.md Die neueste Version gibt es hier.: https://github.com/nenes25/eicaptcha Das Modul ist ausgelegt für Google reCAPTCHA version 2 "Ich bin kein Roboter" Grüsse Whiley Link to comment Share on other sites More sharing options...
eleazar Posted February 16, 2018 Share Posted February 16, 2018 Mag sein, ich hatte nur die von dir gepostete Version mit 1.6.1.10 getestet, und da hat es nicht funktioniert. Vielleicht ist der Fehler ja jetzt behoben. Link to comment Share on other sites More sharing options...
jschm Posted February 16, 2018 Author Share Posted February 16, 2018 On 15.2.2018 at 7:49 PM, Whiley said: Da könntest du nach Google Anleitung vorgehen und den Code eingeben oder einfacher das kostenlose eicaptcha installieren: Das findest du bei github oder du nimmst die hier angehängte installierfähige Version: eicaptcha.zip Grüsse Whiley Habe die hier verlinkte Version genommen, es kommt deutlich weniger SPAM durch, aber doch noch ein paar Mails pro Tag. Evtl. war das ja eine alte Version? Muss ich das veraltete Modul deaktivieren, vom FTP löschen, das neue hochladen und dann wieder aktivieren? Link to comment Share on other sites More sharing options...
Whiley Posted February 16, 2018 Share Posted February 16, 2018 jschm, arbeitest du mit der Version "Ich bin kein Roboter" und funktioniert der Schutz wenn du das selbst testest im Kontaktformular? Du kannst das Modul im Backoffice deaktivieren, deinstallieren und die neuere Version 0.4.12 neu installieren. Moderne Spamtools sind aber in der Lage captchas zu umgehen indem sie menschliches Verhalten beim Beschreiben der Formulare nachahmen. Wenn du es verantworten kannst auf Kunden aus Rußland zu verzichten, könntest du natürlich die Endekennung ".ru" bei den email-Eingaben sperren, ich habe das gerade so bei mehreren Shops gemacht, seit 24 Stunden ist da jetzt Ruhe. Grüsse Whiley Link to comment Share on other sites More sharing options...
eleazar Posted February 17, 2018 Share Posted February 17, 2018 Die aktuelle Version des Moduls ist wirklich ausgezeichnet. Danke für den Tip, Jörg. Ich habe vorhin ein paar kleine Bugs in den Moduleinstellungen beseitigt und eine deutsche Übersetzung hinzugefügt: https://github.com/Nobodaddy/eicaptcha/ Hier die fertige Zip-Datei: eicaptcha.zip 1 Link to comment Share on other sites More sharing options...
Claudiocool Posted February 17, 2018 Share Posted February 17, 2018 Hast du da ausser die 3 Änderungen in der eicaptcha.php weitere Änderungen in den Scripten drin? Link to comment Share on other sites More sharing options...
Tom1967 Posted February 19, 2018 Share Posted February 19, 2018 Hallo Eleazar, vielen Dank! Ich bekomme seit gestern ewig viel Spam über das Kontaktformular as Russland. Hab das jetzt mal installiert und hoffe, dass es wirkt ;-) VG Tom Link to comment Share on other sites More sharing options...
eleazar Posted February 19, 2018 Share Posted February 19, 2018 Hervè hat meine kleinen Änderungen jetzt sowieso ins Modul integriert: https://github.com/nenes25/eicaptcha/commits/master/eicaptcha.php Link to comment Share on other sites More sharing options...
jschm Posted February 25, 2018 Author Share Posted February 25, 2018 Vielen Dank an alle. Habe jetzt nochmal die neuste Version installiert und aktiviert mit "reCaptcha". Bei der letzten Version kamen nach wie vor pro Tag einige Nachrichten durch. Hoffe es geht jetzt auf 0 runter :-) Link to comment Share on other sites More sharing options...
knecht2020 Posted February 27, 2018 Share Posted February 27, 2018 Ich habe eicapatcha jetzt auch installiert. Dank der Hilfe hier funktioniert es ohne Probleme. Danke dafür Link to comment Share on other sites More sharing options...
bleumel Posted February 27, 2018 Share Posted February 27, 2018 (edited) Habe es auch erfolgreich installiert. Vielen Dank an euch! Für ein paar Tage war Ruhe, nun bekomme ich hin und wieder doch wieder Spams durch das Kontaktformular. Die Spammer scheinen leider recht lernfähig zu sein. :-/ edit: während ich dies hier schreibe, *zack* gleich vier Nachrichten erhalten. Es scheint doch wieder mehr zu werden. UUUaaaahh.....:-( Edited February 27, 2018 by bleumel (see edit history) Link to comment Share on other sites More sharing options...
Shad86 Posted February 28, 2018 Share Posted February 28, 2018 Und bei dir ist das Recaptcha von Google in Version 2 installiert? Und hast du bei dir mal getestet ob sich das Formular auch wirklich nicht abschicken lässt wenn der Captcha nicht ausgefüllt ist? Bei uns ist seit einführung ruhe. Link to comment Share on other sites More sharing options...
eleazar Posted March 1, 2018 Share Posted March 1, 2018 Vielleicht sollten sich diejenigen Nutzer von 1.6, die trotz Captcha-Modul weiterhin Spam übers Kontaktformular erhalten, überlegen, auf mindestens Version 1.6.1.17 upzugraden. Denn ab dieser Version ist ein Honigtöpfchen in Form eines Hidden Fields eingebaut. Man kann es aber auch selbst "nachrüsten", wenn man sich ansieht, was die Programmiererin Hibatallah Aouadni hier eingebaut hat: https://github.com/PrestaShop/PrestaShop/pull/8168/commits/1482acec6e91a6e694b9638d42ac69be391dd7fc Erweitert werden müssen die beiden Funktion postProcess() und initContent() in /controllers/front/ContactController.php; außerdem die Datei contact-form.tpl des Templates. Wer PrestaShop 1.5 einsetzt, kann diese Sicherheitshürde ebenfalls einbauen, sollte aber auf die geänderte Syntax genau achten. Falls Interesse besteht, kann ich die Änderungen für 1.5 hier noch posten. Link to comment Share on other sites More sharing options...
bleumel Posted March 1, 2018 Share Posted March 1, 2018 (edited) Am 28.2.2018 um 9:07 AM schrieb Shad86: Und bei dir ist das Recaptcha von Google in Version 2 installiert? Und hast du bei dir mal getestet ob sich das Formular auch wirklich nicht abschicken lässt wenn der Captcha nicht ausgefüllt ist? Bei uns ist seit einführung ruhe. Version 0.4.12 steht da, letzte Version die o.g. wurde. Oder wo finde ich eine andere Versionsangabe? Ja, Formular lässt sich ohne Captcha in keiner der beiden Shopsprachen abschicken. Habe ich mehrfach getestet. Bin auf 1.6.1.13 und werde dann wohl mal auf 1.6.1.17 gehen... Edit: Spam kommen heute Nachmittag wieder im Sekundentakt rein.... Edited March 1, 2018 by bleumel (see edit history) Link to comment Share on other sites More sharing options...
bleumel Posted March 1, 2018 Share Posted March 1, 2018 vor 2 Stunden schrieb eleazar : Hibatallah Aouadni hier eingebaut hat: https://github.com/PrestaShop/PrestaShop/pull/8168/commits/1482acec6e91a6e694b9638d42ac69be391dd7fc Erweitert werden müssen die beiden Funktion postProcess() und initContent() in /controllers/front/ContactController.php; außerdem die Datei contact-form.tpl des Templates. Danke, eleazar! Kurze Frage: Muss man den genannten Code in den Dateien nur hinzufügen oder etwas anderes rausnehmen oder ändern? Link to comment Share on other sites More sharing options...
eleazar Posted March 1, 2018 Share Posted March 1, 2018 Eigentlich wird überall nur etwas ergänzt. Achte aber auch auf das zusätzliche Komma in der Funktion initContent 'message' => html_entity_decode(Tools::getValue('message')), Dagegen kann das Komma in der Folgezeile entfallen.: Link to comment Share on other sites More sharing options...
bleumel Posted March 1, 2018 Share Posted March 1, 2018 Sorry, was genau wird denn ergänzt? Ich bin nicht geübt im lesen der auf Github dargestellten Inhalte :-/ Einige zeilen werden aufgeklappt oder zugeklappt. Code kann ich zwar erkennen, nicht aber genau was davon ergänzt werden soll. Link to comment Share on other sites More sharing options...
eleazar Posted March 1, 2018 Share Posted March 1, 2018 Immer auf das + und - achten. Plus wird ergänzt, Minus wird gestrichen. Wenn du selbst nicht im Code fummeln willst, lade dir doch einfach die entsprechende Datei aus 1.6.1.17 odr 1.6.1.18 per FTP. Link to comment Share on other sites More sharing options...
bleumel Posted March 2, 2018 Share Posted March 2, 2018 vor 21 Stunden schrieb eleazar : lade dir doch einfach die entsprechende Datei aus 1.6.1.17 odr 1.6.1.18 per FTP. ähm, ja, FTP is klar, aber wo kann ich mir denn die Datei dann laden? Eigenen Testshop in der Version aufmachen? Sorry, dass ich das nicht auf Anhieb blicke. Link to comment Share on other sites More sharing options...
eleazar Posted March 2, 2018 Share Posted March 2, 2018 O Mann! Und wo hast du dir die Zip-Datei mit deinem PrestaShop hergeholt? Doch wohl auch von der Downloadseite, oder? Guck doch mal oben rechts im Forum. Siehst du dort den Button Get PrestaShop? Da hangelst du dich durch, bis du hier anlangst: https://www.prestashop.com/en/previous-versions Dann wählst du 1.6.1.17 oder 1.6.1.18. Die beiden Dateien entnimmst du der Zip-Datei und überschreibst damit via FTP deine bisherigen. 1 Link to comment Share on other sites More sharing options...
bleumel Posted March 2, 2018 Share Posted March 2, 2018 Ach so, hihi, ja, nein, ich hatte mir Webspace mit Vorinstallierter Version zugelegt und Versionsupdates im Backoffice gemacht. Daher kein Bewusstsein für den eigentlichen Shop download. So musste ich fragen. Daaanke! :-) Link to comment Share on other sites More sharing options...
jschm Posted March 3, 2018 Author Share Posted March 3, 2018 (edited) On 1.3.2018 at 4:42 PM, eleazar said: Erweitert werden müssen die beiden Funktion postProcess() und initContent() in /controllers/front/ContactController.php; außerdem die Datei contact-form.tpl des Templates. So ich hab das jetzt mal angepasst. Die letzten 2 Tage kamen dutzende SPAM Mails, trotz funktionierendem google captcha (bei manuellem Test). Hoffe der honeypot aus der 1.6.1.18 hilft. Edited March 3, 2018 by jschm (see edit history) Link to comment Share on other sites More sharing options...
bleumel Posted March 4, 2018 Share Posted March 4, 2018 Erledigt. Dateien ContactController.php und contact-form.tpl aus der Version 1.6.1.18 genommen und per FTP eingefügt. Seitdem ist tatsächlich (wieder) Ruhe. (Dateien habe ich, für Leute wie mich, mal hier angefügt. Stammen aus der 1.6.1.18) Captcha hatte ich eh schon drin und lasse es auch so. Danke nochmals, Eleazar, für deine Hilfe und in meinem Fall deine Geduld! ;-) contact-form.tpl ContactController.php Link to comment Share on other sites More sharing options...
Eolia Posted March 4, 2018 Share Posted March 4, 2018 In french^^ https://shop.devcustom.net/fr/content/9-mise-en-place-captcha?content_only=1 Link to comment Share on other sites More sharing options...
bleumel Posted March 13, 2018 Share Posted March 13, 2018 sooo, das hat ja leider nicht lange gehalten. Trotz captcha und honeypot habe ich mir heute nach wieder zwei Spam gefangen. never ending story. schade. und bei euch? Link to comment Share on other sites More sharing options...
Shad86 Posted March 13, 2018 Share Posted March 13, 2018 Bei mir ist komplett Ruhe seitdem ich den Google Captcha eingebaut habe. Zwar im 1.5er Shop aber sollte ja nicht das entscheidende sein. Link to comment Share on other sites More sharing options...
frad80 Posted April 19, 2020 Share Posted April 19, 2020 Nutzt das jemand in der aktuellsten Version 1.7.6? Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now