Kontaktformular bringt beim ersten Absenden Fehler

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
MarioH
Regular
Posts: 238
Joined: Mon Jul 20, 2009 10:53 pm
Contact:

Kontaktformular bringt beim ersten Absenden Fehler

Post by MarioH »

Hallo!

Ich habe ein Problem mit dem Plugin Kontaktformular. Ich nutze das Plugin mit einer individuellen Feldkonfiguration. Beim ersten "Kommentar abschicken" bekomme ich folgende Meldungen.
Name, E-Mail und ihre Nachricht dürfen nicht leer gelassen werden.


Ihr Kommentar enthielt keinen gültigen Session-Hash. Kommentare auf diesem Blog können nur mit aktivierten Cookies hinterlassen werden, und Sie müssen bereits eine weitere URL des Blogs geöffnet haben, bevor Sie einen Kommentar absenden können!
Ich habe aber alle Felder ausgefüllt und das Feld "ihre Nachricht" habe ich nicht. Wenn ich jetzt nochmal, ohne etwas zu ändern, auf "Kommentar abschicken" klicke, wird das Formular ohne Fehler abgeschickt.

Was kann das sein?

Gruß
Mario
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by Timbalu »

Ich würde sagen
Ihr Kommentar enthielt keinen gültigen Session-Hash. Kommentare auf diesem Blog können nur mit aktivierten Cookies hinterlassen werden, und Sie müssen bereits eine weitere URL des Blogs geöffnet haben, bevor Sie einen Kommentar absenden können!
das sagt alles, oder?!
Ansonsten müsstes du mir mal die url zum herumspielen geben.
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
MarioH
Regular
Posts: 238
Joined: Mon Jul 20, 2009 10:53 pm
Contact:

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by MarioH »

Cookies sind aktiv und ich rufe das Formular von einer statischen Seite aus auf. Schicke dir die URL mal als PN.
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by Timbalu »

Ok. Das Problem ist nicht die session oder fehlende cookies.
Das Problem ist wohl, dass du kein body Textfeld hast. Dafür ist das Plugin mit seinen Prozeduren sicher nicht ausgelegt. :)
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
MarioH
Regular
Posts: 238
Joined: Mon Jul 20, 2009 10:53 pm
Contact:

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by MarioH »

Muss das Feld zwingend "Body" heissen?

Gruß
Mario

Ich habe jetzt noch ein Body-Feld eingefügt, es kommt immer noch die oben genannte Meldung. Das Formular lässt sich immer nur aus der "index.php#feedback"-Seite abschicken.
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by Timbalu »

Nein nicht unbedingt, aber soetwas

Code: Select all

<textarea rows="10" cols="40" id="serendipity_commentform_comment" name="serendipity[comment]">{$commentform_data}</textarea>
Das dynamicform löst das über

Code: Select all

                 {elseif $field.type == "textarea"}
                     <textarea rows="10" cols="40" id="serendipity_commentform_{$field.id}" name="serendipity[{$field.id}]">{$field.default}</textarea><br />
                 {else}
                     <input type="text" id="serendipity_commentform_{$field.id}" name="serendipity[{$field.id}]" value="{$field.default}" size="30" />
                 {/if}
was wohl bedeutet, dass es nicht unbedingt eine textarea sein muss. Aber es wird im Standard Fall auf

Code: Select all

!empty($serendipity['POST']['comment'])
gecheckt, womit festgelegt wird, dass das Feld mindestens

Code: Select all

name="serendipity[comment]"
enthalten muss.

Der dynamicform check ist ein wenig komplizierter und bildet $comment aus

Code: Select all

$comment = $comment. "\nField  '" . $field['name'] . "': " . $serendipity['POST'][$field['id']];
was wohl mindestens

Code: Select all

name="serendipity[{$field.id}]"
bzw das was du als field.id bestimmt hast voraussetzt. Aber ich müsste auch erst per Einzelfall debuggen, ob das wie gewünscht auch richtig funktioniert.

Edit. kommt denn der second try wirklich mit allen Inhalten als Mail an?
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
MarioH
Regular
Posts: 238
Joined: Mon Jul 20, 2009 10:53 pm
Contact:

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by MarioH »

Ja, der Mailtext kommt komplett mit allen Feldern an.

Ich habe das benutzerdefinierte Formular im Plugin gewählt und die nachfolgenden Einstellungen für die Felder gemacht. (Die Felder "comment" und "email" habe ich nochmal zu Testzwecken hinzugefügt).
comment.jpg
comment.jpg (151.48 KiB) Viewed 7449 times
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by Timbalu »

Wenn ich das richtig deute, und du das dynamicform benutzt, musst du darauf achten, dass die $field['required'] Felder richtig gesetzt sind (das ist in den Optionen des Spamblock Plugins).

Ebenso müssen nach dem ersten Absenden alle required field Felder im $serendipity['POST'][$field['id']] und $_POST[$field['id']] ausgefüllt sein. Da scheint irgend etwas nicht zu stimmen. Vielleicht kannst du das selber debuggen, in dem du vor dieser Zeile https://github.com/s9y/additional_plugi ... m.php#L292 ein

Code: Select all

echo '<pre>';print_r($serendipity['POST']);echo '</pre>'; 
einfügst.
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by Timbalu »

Ach ja, das dynamicform hatte eigene required Felder. Hoffentlich spukt da nicht auch noch das Spamblock Plugin dazwischen.

Dampf das ganze mal ein... siehe Beispiel
require;Name;text:require;E-Mail;text:require;Homepage;text:require;Nachricht;textarea;

Besonders an der Stelle, wo du statt Einwortnamen mehr Wörter mit Leerzeichen und Umlauten verwendest. Vielleicht ist es genau das.

Edit: Ich kann mir gut vostellen es ist dies

Code: Select all

name="serendipity[telefonnummer_f__r_r__ckfragen]"
In diesem Fall müsste das required form field wahrscheinlich so

Code: Select all

require;telefonnummer_f__r_r__ckfragen;text;
lauten. Besser wäre es allerdings gar keine Umlaute und nur Einwortnamen zu verwenden.
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
MarioH
Regular
Posts: 238
Joined: Mon Jul 20, 2009 10:53 pm
Contact:

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by MarioH »

Es ist definitiv das Spamblock Plugin, das den Fehler produziert. Wenn ich es deaktiviere, funktioniert das Formular.
Timbalu
Regular
Posts: 4598
Joined: Sun May 02, 2004 3:04 pm

Re: Kontaktformular bringt beim ersten Absenden Fehler

Post by Timbalu »

Nunja - deaktivieren ist "vollständig auf Schutz" zu verzichten. Das muss aktiviert bleiben!

Aber du kannst die voreingestellten required fields dort löschen und sehen, ob sie es sind die mitwirken. (Das wäre allerdings nicht so gut, da sie auch zb für die Kommentarfelder benuzt werden, glaube ich...)

Ansonsten ist es bestimmt eher das von mir im Edit benannte Telefon Feld.
Regards,
Ian

Serendipity Styx Edition and additional_plugins @ https://ophian.github.io/ @ https://github.com/ophian
Post Reply