Zum Inhalt springen

Powermail: Werte aus hidden fields nicht immer in Mail vorhanden

Erstellt am 20. Januar 2009 · 11 Antworten · letzte Antwort am 3. Februar 2009

Tags: Powermail, Frage

dabjoern ·

Hallo Leute,

auf einer Seite habe ich einen Link angelegt in der Form:

http://www.domain.de/de/anmeldung.html?uid=125&eventtitle=Test%20Test&shorttitle=TestShort

Dieser Link ruft das Powermail Formular auf. Dort habe ich mehrere Felder angelegt. Das Feld mit der uid16 wird über das TS plugin.tx_powermail_pi1.prefill.uid16 vorausgefüllt (siehe unten). Außerdem habe ich zwei weitere versteckte Felder (uid17 und uid38-), die ebenfalls via TS vorausgefüllt werden (das TS befindet sich auf der selben Seite).

#Vorbefüllung mit der VeranstaltungsID
plugin.tx_powermail_pi1 {
  prefill {
    uid16 = TEXT
    uid16.wrap = <strong>|</strong>
    uid16.data = GPvar : eventtitle
    uid17 = TEXT
    uid17.wrap = |
    uid17.data = GPvar : eventtitle
    uid38 = TEXT
    uid38.wrap = |
    uid38.data = GPvar : shorttitle
  }
}

Nun habe ich für das Formular ein eigenes Template angelegt und lasse es sowohl an den Absender als auch an den Empfänger schicken. Im Subpart POWERMAIL_RECIPIENT_MAIL (Empfänger) habe ich die versteckten Felder so eingebunden:

<dt>###LABEL_UID17###: </dt><dd>###UID17###</dd>
<dt>###LABEL_UID38###: </dt><dd>###UID38###</dd>

Im Subpart POWERMAIL_SENDER_MAIL (Absender) habe ich nur eins der versteckten Felder eingebunden:

<dt>###LABEL_UID17###: </dt><dd>###UID17###</dd>

Jetzt das Problem: In der E-Mail an den Empfänger sind beide versteckten Felder ausgefüllt (Label und Inhalt). In der E-Mail an den Absender ist das versteckte Feld leer. Es steht nur ein Doppelpunkt. Ich habe das Ganze nun mit IE7, Opera und FF2 getestet. Im Quelltext sind die Felder gefüllt.

Ich setze wt_spamshield ein, habe aber die Session Überprüfungen abgeschalten.

Jemand eine Idee? Danke für jeden Hinweis, dabjoern

einpraegsam.​net ·

Hi,

also auf den ersten Blick sieht alles gut und sinnvoll aus.
Wenn die Werte nicht befüllt werden, würde ich das ganze einmal Debuggen (z.B. debug = all in den constants

Alex

dabjoern ·

Danke Alex für deinen Post. Die Site ist schon live. Wie wird denn das Debugging ausgegeben? Brauche ich da eine debug Extension? Ich aktualisiere auch mal auf die aktuelle Version von powermail. Zur Zeit läuft die 1.4.2.

Grüße, dabjoern

einpraegsam.​net ·

Debug Ausgabe ist natürlich bei der Liveumgebung schlecht...
Habt ihr eine feste IP im Unternehmen und etwas PHP Erfahrung, dann könntet ihr selbst einfach Hand anlagen und nachsehen

dabjoern ·

Also ich habe ein wenig PHP Erfahrung. Habe schon einiges programmiert und verstehe, was ich vor mir habe. Wo kann ich da schauen? Habe auch eben mal auf 1.4.6 aktualisiert. Waren ein paar gute Sachen dabei (wie Bug #2261), hat aber für das beschriebene Problem hier nichts gebracht.

Danke für deine, wie immer, professionelle und schnelle Hilfe, dabjoern 😉

einpraegsam.​net ·

Als erstes würde ich mir die pi1/class.tx_powermail_submit.php vornehmen, denn hier werden die Mails generiert - dort also mal eine Debug Ausgabe platzieren - wenn der Wert hier schon fehlt dann zurückgehen (Debuggen vergleiche ich immer mit einer Schnitzeljagt - macht nur nicht so viel Spaß)

dabjoern ·

Okay, ich habe mal fix doch das Debugging angeschalten (debug.output = email und danach all). Die session ist ordnungsgemäß gefüllt, d.h. dort stimmen die Felder uid17 und uid38. In der recipient_mail passt auch alles. In der sender_mail fehlt der Inhalt wie gehabt. Die DB values sind dann aber wieder korrekt. Was nun? In der Session ist alles da. Wieso geht der Inhalt dann in der sender_mail verloren.

Danke und Grüße, dabjoern

dabjoern ·

Ich kann es mir auch nicht erklären. Wie gesagt, ich verwende unterschiedliche HTML Templares für Absender und Empfänger. Ich habe dir mal eine E-Mail mit dem Screenshot gesendet.

Grüße, dabjoern

Impi ·

Hallo Björn,

setze folgende Konstante auf

plugin.powermail.hiddenfields.show = 1,1,1,1,1

recipient mail
confirmation mail to sender
thx message page
confirmation message page
mandatory page

Standardmäßig ist das auf folgenden Wert gesetzt 1,0,0,0,1 so dass deine confirmationmail die hiddenfields nicht aus der Session übergeben bekommt wenn das MarkerArray generiert wird.

sollte dir hoffentlich helfen 😉 #angry# #angry# #angry#