Captcha. Bitte einmal einfach erklärt …

Fragen zum Erstellen von Templates für webEdition.
Getty24
Member
Beiträge: 52
Registriert: Mi 30. Apr 2008, 16:57

Captcha. Bitte einmal einfach erklärt …

Beitragvon Getty24 » Mi 19. Mai 2021, 19:10

Hi.
Was mache ich falsch.
Ich verstehe es nicht so ganz mit dem Captcha. Eine if-Abfrage bei OK-OK mit <we:formmail /> vor dem <we:form>?
Und wann und wie findet eigentlich die Abfrage statt, ob das Captcha richtig vom User eingetragen wurde?
Captcha-Bild-Erstellung funktioniert. Aber ich kann auf "absenden" klicken, so oft ich will. Immer geht eine Mail raus, kein Captcha verhindert das "absenden". Wo ist der Denkfehler.

Vielleicht kann jemand helfen:
Ein super-simples we:Formular mit einem (!) Input Feld, ohne CSS, ohne divs, aber mit einem korrekt eingebauten Captcha.
Das wäre toll :-) (Ab besten auch funktionsfähig, wenn beim User JavaScript deaktiviert ist …)

Getty

Code: Alles auswählen

<!-- vor dem we:form-Tag -->
<we:ifCaptcha name="code">
OK-OK <we:formmail /> <!-- was soll der we:formmail-Tag hier eigentlich -->
<we:else/>
NOT-OK <!-- und was soll hierher ? -->
</we:ifCaptcha>

<!-- und hier der we:form-Tag zum Aufruf der we_formmail.php -->
<we:form type="formmail" required="code" usw. …>

<!-- irgendein Form-Feld -->
<input type="text" name="Name">
	
<!-- der we:captcha-Tag, also das Bild -->
<we:captcha height="23" width="150" maxlength="5" subset="num" transparent="true" type="png" />

<!-- der we:input-Tag zur Eingabe Captcha durch User -->
<input required type="text" name="code">

<!-- Wo wird überprüft? -->

<!-- der Absende Button -->
<input type="submit" name="Senden" value="absenden" />

</we:form>

NilSole
Senior Member
Beiträge: 303
Registriert: Mi 27. Mär 2019, 15:28

Re: Captcha. Bitte einmal einfach erklärt …

Beitragvon NilSole » Mi 19. Mai 2021, 21:32

Besonderheit: Dieses Attribut steht nur zur Verfügung und wird im Tagwizzard nur angezeigt, wenn in den allgemeinen Einstellungen/Formmail der Eintrag "Formmail über webEdition-Dokument aufrufen" auf "ja" gesetzt ist.
Hast du denn diese Einstellung aktiviert?
Und dann müsste wohl entsprechend Id= self o.ä. Gesetzt sein.

https://www.webedition.org/de/dokumenta ... ibute_3243

r_kempf
Senior Member
Beiträge: 214
Registriert: Do 14. Apr 2016, 13:27

Re: Captcha. Bitte einmal einfach erklärt …

Beitragvon r_kempf » Do 20. Mai 2021, 11:07

Moin,
we:ifCaptcha prüft den korrekten Captcha-Code und bei Übereinstimmung wird per formmail das Formular versandt. Mit else kannst Du dann den Fehlerhinweis ausgeben. Wichtig ist, dass dieses Snippet in einer Zeile (ohne Umbruch) steht. Und wie Nils schon hingewiesen hat, sollte in dieser Variante im we:form id="self" stehen.

Code: Alles auswählen

<we:ifCaptcha name="code"><we:formmail />Vielen Dank für Ihre Nachricht!</div><we:else/><we:ifVar match="1" name="submitted" type="request">Bitte geben Sie den korrekten Captcha-Code ein!</div></we:ifVar></we:ifCaptcha>
<we:form type="formmail" name="kontaktform" recipient="xxx@xxx.de" from="yyy@yyy.de" subject="Anfrage" method="post" id="self" charset="UTF-8" remove="submit,securityToken,submitted,code">
<we:captcha height="23" width="150" maxlength="5" subset="num" transparent="true" type="png" />
<input type="text" name="code" class="form-control" placeholder="Code *" required /> 
<input type="submit" name="submit" value="Absenden"/>
</we:form>
VG Regina

Getty24
Member
Beiträge: 52
Registriert: Mi 30. Apr 2008, 16:57

Re: Captcha. Bitte einmal einfach erklärt …

Beitragvon Getty24 » Do 20. Mai 2021, 14:57

r_kempf hat geschrieben: Do 20. Mai 2021, 11:07… Mit else kannst Du dann den Fehlerhinweis ausgeben. …
Hi Regina. Danke – genau so etwas habe ich es gesucht. An sich klappt dein Snippet auch: das Formular wird versendet bzw. nicht versendet, je nach dem, ob das Captcha korrekt eingetragen wurde. Nur wird die angebenen Erfolgs- bzw. Fehlermeldung nicht angezeigt. Erfolgsmeldung keine (obwohl versendet). Fehlermeldung: "Vielen Dank, Ihre Formulardaten sind bei uns angekommen! / Thank you, we received your form data!", also so ein Standart-Text …

Getty24
Member
Beiträge: 52
Registriert: Mi 30. Apr 2008, 16:57

Re: Captcha. Bitte einmal einfach erklärt …

Beitragvon Getty24 » Do 20. Mai 2021, 15:03

NilSole hat geschrieben: Mi 19. Mai 2021, 21:32
Besonderheit: … wenn in den allgemeinen Einstellungen/Formmail der Eintrag "Formmail über webEdition-Dokument aufrufen" auf "ja" gesetzt ist.
Hast du denn diese Einstellung aktiviert?
Und dann müsste wohl entsprechend Id= self o.ä. Gesetzt sein.
Ja. Beides so umgesetzt:

Code: Alles auswählen

<we:ifCaptcha name="code"><we:formmail/>OK!<we:else/>NOT OK!</we:ifCaptcha>
<we:form type="formmail" name="kontaktform" recipient="xxx@xxx.de" from="xxx@xxx.de" subject="Anfrage" method="post" id="self" charset="UTF-8" remove="submit">
<we:captcha height="23" width="150" maxlength="5" subset="num" transparent="true" type="png" />
<input type="text" name="code" required /> 
<input type="submit" name="submit" value="Absenden"/></we:form>
Ob ich in den Einstellungen nun den Eintrag "Formmail über webEdition-Dokument aufrufen" auf ja oder nein stelle: Bewirkt keinen mir sichtbaren Unterschied. In beiden Fällen wird das Mail gesendet, bzw. nicht gesendet, wenn Captcha nicht stimmt.

r_kempf
Senior Member
Beiträge: 214
Registriert: Do 14. Apr 2016, 13:27

Re: Captcha. Bitte einmal einfach erklärt …

Beitragvon r_kempf » Do 20. Mai 2021, 19:36

Versuchs mal mit einem input type="hidden" und ifVar fürs Anzeigen der Fehlermeldung. Die Standarderfolgsmeldung kommt von WE. Ich weiss nicht, ob man die ausstellen kann.

Code: Alles auswählen

<we:ifCaptcha name="code"><we:formmail/>OK!<we:else/><we:ifVar match="1" name="submitted" type="request">NOT OK!</we:ifVar></we:ifCaptcha>
<we:form type="formmail" name="kontaktform" recipient="xxx@xxx.de" from="xxx@xxx.de" subject="Anfrage" method="post" id="self" charset="UTF-8" remove="submit">
<input type="hidden" name="submitted" value="1" />
<we:captcha height="23" width="150" maxlength="5" subset="num" transparent="true" type="png" />
<input type="text" name="code" required /> 
<input type="submit" name="submit" value="Absenden"/></we:form>


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot] und 11 Gäste