Formmail mit mehreren Empfängern via Select
Formmail mit mehreren Empfängern via Select
Hallo zusammen,
hatte über Jahre in etwa wie unter viewtopic.php?f=87&t=7192 beschrieben ein Kontaktformular laufen, bei welchem der Besucher über einen Select den Empfänger auswählen konnte. Seit dem Update auf Version 7.0.4 funktioniert der Select nicht mehr - hat sich hier etwas bei der Anforderung geändert? Wie kann man das aktuell umsetzen? Vielen Dank!
hatte über Jahre in etwa wie unter viewtopic.php?f=87&t=7192 beschrieben ein Kontaktformular laufen, bei welchem der Besucher über einen Select den Empfänger auswählen konnte. Seit dem Update auf Version 7.0.4 funktioniert der Select nicht mehr - hat sich hier etwas bei der Anforderung geändert? Wie kann man das aktuell umsetzen? Vielen Dank!
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Formmail mit mehreren Empfängern via Select
Hallo,
Ich denke es wäre hilfreich wenn du noch folgende Infos ergänzt:
Liebe Grüße,
Sascha
Ich denke es wäre hilfreich wenn du noch folgende Infos ergänzt:
- Von welcher Version bist du auf die 7.0.4 gewechselt?
- Welche PHP Version ist da im Einsatz?
- Gibt es Meldungen im Fehler-Protokoll?
- Was genau bedeutet "... funktioniert der Select nicht mehr"? Wird das Element nicht mehr angezeigt, kann man nichts mehr auswählen, etc.?
- Wie schaut dein Code konkret aus?
Liebe Grüße,
Sascha
Re: Formmail mit mehreren Empfängern via Select
... eventuell hat es gar nichts mit dem Selch zu tun, sondern mit überschriebenen Einstellungen nach dem Update wie z.B. hier viewtopic.php?f=87&t=41093
Re: Formmail mit mehreren Empfängern via Select
Danke für Eure Antworten. Hab in den Einstellungen geschaut, "Formmail über webEdition-Dokument aufrufen" war deaktiviert, die Aktivierung ändert aber nichts.
Die genaue Fehlermeldung ist: "Cannot modify header information - headers already sent by (output started at .../we_fragment_base.class.php)"
Das Formular ist wie folgt aufgebaut:
Das Auswählen des Select im Formular funktioniert, auf der nächsten Seite (mit <we:ifCaptcha...>-Auswertung) ist im Quellcode der Recipient leer.
Kann nicht genau sagen, ab welcher Version es nicht mehr funktioniert hat, hat in Version 7 aber mit Sicherheit schon funktioniert. PHP-Version ist 5.6.
In der Versionshistorie ist wohl nur formmail-relevant, dass in 7.0.4. die "pre_content" und "post_content" angepasst wurden, die verwend ich aber nicht.
Die genaue Fehlermeldung ist: "Cannot modify header information - headers already sent by (output started at .../we_fragment_base.class.php)"
Das Formular ist wie folgt aufgebaut:
Code: Alles auswählen
<we:form type="formmail" recipient="recipient" ...>
<select name="recipient">
<option value="mail@domain.de">Empfänger</option>
</select>
</we:form>
Kann nicht genau sagen, ab welcher Version es nicht mehr funktioniert hat, hat in Version 7 aber mit Sicherheit schon funktioniert. PHP-Version ist 5.6.
In der Versionshistorie ist wohl nur formmail-relevant, dass in 7.0.4. die "pre_content" und "post_content" angepasst wurden, die verwend ich aber nicht.
Re: Formmail mit mehreren Empfängern via Select
... kannst du mal bitte den "fertigen" HTML-Code des Formulars von der Website posten?
Ich habe die Vermutung, dass das Option-Value von "recipient" eine ID und keine E-Mail-Adresse sein muss.
Ich habe die Vermutung, dass das Option-Value von "recipient" eine ID und keine E-Mail-Adresse sein muss.
Re: Formmail mit mehreren Empfängern via Select
Das ist der Quellcode auf der Formularseite:
Wenn ich statt <we:form type="formmail" recipient="recipient" ...> eine Adresse <we:form type="formmail" recipient="mail@domain.de" ...> eintrage, ist die Quellcode-Ausgabe identisch, der Formularversand funktioniert aber.
Code: Alles auswählen
<form method="post" name="we_global_form" onsubmit=";return true;" action="versand.php">
<input type="hidden" name="data-jwt" value="abc..." />
<input type="hidden" name="pre_confirm" value="abc..." />
<input type="hidden" name="post_confirm" value="abc..." />
...
<select name="recipient">
<option value="mail@domain.de">Empfänger</option>
</select>
<input type="submit" value="Nachricht senden" id="formInput_submit" />
</form>
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Formmail mit mehreren Empfängern via Select
Hey,
Liebe Grüße,
Sascha
Hast du da wirklich "recipient" als value drinnen stehen? Das kommt mir jetzt schon ein wenig komisch vor. Das sollte dann doch eher eine Variable sein, also "$recipient" oder so.Code: Alles auswählen
<we:form type="formmail" recipient="recipient" ...>
Liebe Grüße,
Sascha
Re: Formmail mit mehreren Empfängern via Select
@statist: dein Code ist leider noch nicht vollständig. Ich brauche alle Input Hidden Felder.
Re: Formmail mit mehreren Empfängern via Select
Hallo Sascha, mit $recipient ist's das gleiche. Und ja, hat bisher so funktioniert
Andreas, es werden nur diese drei "input hidden" ausgegeben, mehr ist nicht im Quellcode.
Andreas, es werden nur diese drei "input hidden" ausgegeben, mehr ist nicht im Quellcode.
-
- webEdition Partner
- Beiträge: 1825
- Registriert: Di 7. Mär 2006, 16:50
- Wohnort: Wien
- Kontaktdaten:
Re: Formmail mit mehreren Empfängern via Select
Hallo,
Ich hatte jetzt auch nicht erwartet, dass es mit "$recipient" gleich geht. Mein Punkt ist, das dort wenn eine Variable hinein gehört, da "recipient" ja als String behandelt wird.
Ich habe jetzt einen kurzen Blick in den Code von <we:form type="formmail" ...> (we_tag_form.inc.php) geworfen. Das Attribut "recipient" verlangt hier grundsätzlich eine Liste von E-Mailadressen. Diese werden in weiterer Folge in IDs aufgelöst. Übergeben wird das dann an <we_formmail.php> (we_formmail.php), das dementsprechend eine Liste von IDs im Attribut "recipient" erwartet.
Hast du die Empfänger bei den Formmail-Empfänger eingetragen, sh. Tag-Referenz für <we:form type="formmail>
Sascha
Ich hatte jetzt auch nicht erwartet, dass es mit "$recipient" gleich geht. Mein Punkt ist, das dort wenn eine Variable hinein gehört, da "recipient" ja als String behandelt wird.
Ich habe jetzt einen kurzen Blick in den Code von <we:form type="formmail" ...> (we_tag_form.inc.php) geworfen. Das Attribut "recipient" verlangt hier grundsätzlich eine Liste von E-Mailadressen. Diese werden in weiterer Folge in IDs aufgelöst. Übergeben wird das dann an <we_formmail.php> (we_formmail.php), das dementsprechend eine Liste von IDs im Attribut "recipient" erwartet.
Hast du die Empfänger bei den Formmail-Empfänger eingetragen, sh. Tag-Referenz für <we:form type="formmail>
Liebe Grüße,Tag-Referenz hat geschrieben:... Die hier eingetragenen E-Mail-Adressen müssen zusätzlich innerhalb von webEdition über das Menü Bearbeiten -> Formmail-Empfänger eingetragen werden. ...
Sascha
Re: Formmail mit mehreren Empfängern via Select
Hallo Sascha,
alle Empfänger aus dem Select sind in den Einstellungen eingetragen.
Meinst Du also, dass die Option eine ID enthalten müsste, welche mit der jeweiligen Mail-Adresse übereinstimmt? Wo kann man die IDs der eingetragenen Empfänger auslesen? Danke für die Hilfe!
alle Empfänger aus dem Select sind in den Einstellungen eingetragen.
Meinst Du also, dass die Option eine ID enthalten müsste, welche mit der jeweiligen Mail-Adresse übereinstimmt? Wo kann man die IDs der eingetragenen Empfänger auslesen? Danke für die Hilfe!
Re: Formmail mit mehreren Empfängern via Select
@statist: also im Quellcode von we_formmail.php steht drin, dass er eine ID erwartet:
Das war aber in Version 7.0.3 noch anders. Da konnte man auch noch E-Mail-Adressen angeben. Daher musst du jetzt statt der E-Mail-Adressen im Select-Feld die entsprechenden IDs aus den Formmail-Einstellungen nutzen. Diese kannst du aber leider nur direkt in der DB ablesen oder du lässt dir vom Formmail-Einstellungsdialog den Quellcode anzeigen und nimmst dann aus dem <option> Tag den value-Wert.
Code: Alles auswählen
$recipients = we_base_request::_(we_base_request::INTLIST, 'recipient');
Re: Formmail mit mehreren Empfängern via Select
Hallo Andreas, perfekt, mit <option value="2"> (ausgelesen aus dem Einstellungen-Quellcode) funktioniert's wieder! Vielen Dank für Eure grandiose Hilfe!
Wer ist online?
Mitglieder in diesem Forum: Semrush [Bot] und 2 Gäste