Hi Andreas,
dazu hätte ich mal eie Frage. Verschickst Du so auch personifizierte Mails, also mit individueller Anrede, oder individuellem Link?
-- yepp...
Denn das mache ich fast nur und habe deshalb eigentlich alle mails fest kodiert im Quelltext stehen, wenn nicht gerade besonders schön ist, vor allem wenn was geändert werden soll. Aber wenn man keine standard-mails verschicken will/kann, dann braucht man da halt einen Parser, der entsprechende Variablen ersetzt.
--- ja, ist doch kein Problem...
Das Problem an dieser Stelle ist nur, dass die mails so verschieden sind, mal brauche ich sowas wie "sehr geehrter Herr XY", mal muß ich z.B. eine komplette Bestellung bestätigen, dann wieder einen individuellen Link schicken, oder ein zufällig erzeugtes Passwort... wie bekommt man das sinnvoll unter einen Hut?
--- die Daten einlesen, das Mail einlesen und dann z.B. %anrede% mit der aus der Datenbank gelesenen anrede ersetzen. Klappt wunderbar... Gesamte message einlesen und dann am besten eine Subroutine &parsetext($message) erstellen, die dann die Felder ersetzt...
Gerade bei Dingen wie Bestätigung einer Bestellung wird das ganze schwierig, da die Daten schonmal unterschiedlich sein können, oder teilweise nicht notwendige Daten nicht mitgeschickt werde sollen, oder je nach gewähter Zahlungsoption verschiedene Texte ausgegeben werden sollen, so würde der Parser doch wieder recht komplex.
--- eigentlich nicht. Du hast dann in der Mail z.B. %zahlungsoption%, welches vom Parser mit der Variable $zahlungsoption ersetzt wird und die hat je nach Zustand einen anderen Wert. Entsprechend geht das auch mit Links.
Außerdem besteht hier noch das Problem, das man eine ganze Liste mit bestellten Artikeln angeben muß, deren Länge man vorher nicht kennt.
--- s.o.
Oder hat das bei solchen Sachen keinen Sinn und man sollte sowas besser fest kodieren, und nur einfache mails mit verschiedener Anrede oder einem Link auf diese Weise parsen und extern speichen?
--- also ich sehe keinen Hinderungsgrund. Ich parse z.B. javascript-Funktionen in die html-templates - das geht auch problemlos...
Alles Liebe
JohnnY