Liebe Community,
Ich nutze im Formular das Feld "Sicherheitsfrage". Mein Provider hat mich heute ausgesperrt, weil ich zuviele POST Requests hatte. Er hat befürchtet, dass das Formular für Spam verwendet wurde. Obwohl dies durch den Honeypot abgefangen wurde, hat dies jeweils zu einem POST-Request geführt. Sehr wahrscheinlich hat der Robot immer wieder versucht das Form Submit auszulösen.
Ein erster Request um dann die Frage sichtbar zu machen ist sicher in Ordnung. Dann müsste aber die Validierung, ob richtig gerechnet wurde clientseitig durchgeführt werden. Als Fallback könnte dich anschliessend auch nochmals auf dem Server geschehen (für den Fall, dass ein Robot dies durchschauen würde).
Im reCaptcha von "dieschittigs/contao-recaptcha" habe ich ein Codefragment gefunden, dass ein Submit beim falscher Validierung verhindert. Deren Extension möchte ich nicht verwenden, weil das Google reCaptcha nicht sicher DSVG kompatibel ist. Das Codefragment (JS) sieht wie folgt aus:
Code:
var node = document.getElementById('recaptcha-<?= $this->strCaptchaKey ?>');
while (node && node.tagName !== 'FORM') node = node.parentNode;
if (node) {
node.addEventListener('submit', function (e) {
e.preventDefault();
grecaptcha.execute();
});
}
window.onSubmit_<?= $this->strCaptchaKey ?> = function () { node.submit(); }
Hat jemand die Möglichkeit, im Core-bundle in JS einzubinden, welches die Summe berechnet und nur dann das Form Submit ausführt?
Vielen Dank.
Lesezeichen