Hallo,
ich verwende in meinen Projekten für jeglichen Mailversand die Klasse phpMailer. Ziemlich gut und empfehlenswert.
Allerdings hab ich es hier mit einem Fehler zu tun, den ich mir nun überhaupt nicht erklären kann.
Ich verschicke zwei Mails in Folge, die erste an den Anbieter, die zweite an den Seitenbesucher, der sich angemeldet hat.
Funktioniert, die Mails kommen an. Da sind nun einige Passagen drin, die in HTML dargestellt werden sollen.
HTML ist auf "true", funktioniert auch. Nun wird der Code für die Mail eben dynamisch aufgebaut und aus irgendeinem Grund kommt es dazu, dass die Mail manchmal als HTML und manchmal als Plain dargestell wird, in Abhängigkeit von einer bestimmten String-Variablen, die an einer bestimmte Stelle des HTML-Dokuments eingebettet wird.
Ich konnte aber nach ausgiebiger Analyse bisher keine plausible Fehlerursache feststellen.
Heißt der String z.B. "Bitte geben" (nur als Beispiel), erscheint die ganze Mail als HTML. Heißt der gleiche String dagegen "Bitte geben Sie eine ..." oder so ähnlich (enthält keine Sonderzeichen!), kann es passieren, dass sie Plain dargestellt wird. Lass ich den String ganz raus, erscheint sie ebenfalls als Plain.
In der ersten Mail (an den Seitenbetreiber) verschicke ich an dieser Stelle Infos über IP, Server, Zeitpunkt. Übernehme ich diesen String (zum Test) auch für den Kunden, erscheint die Mail ebenfalls als HTML. Ändere ich den String ab, wird schnell wieder Plaintext aus der Mail... allerdings ohne einen für mich ersichtlichen Grund... also Sonderzeichen o.ä. kommen wie gesagt nicht vor, sogar nicht mal unbedingt HTML.
Puh...
Da bin ich nun ziemlich überfordert.
Evtl. hat das was mit der Länge an sich zu tun? Ich weiß jetzt nicht... Muss in so einer Mail alle paar Zeichen \r\n erscheinen oder so was? Wobei ich auch das schon probiert hab, aber das löst das Problem noch nicht. Nach irgendwas in der Art schaut es hier aus, aber das muss man dann wohl wissen.
Kennt jemand diese Ecke von Fehler in HTML-Mails?
Gruß Maik
(HTML muss es eben sein, der Seitenbetreiber will das so.)
ich verwende in meinen Projekten für jeglichen Mailversand die Klasse phpMailer. Ziemlich gut und empfehlenswert.
Allerdings hab ich es hier mit einem Fehler zu tun, den ich mir nun überhaupt nicht erklären kann.
Ich verschicke zwei Mails in Folge, die erste an den Anbieter, die zweite an den Seitenbesucher, der sich angemeldet hat.
Funktioniert, die Mails kommen an. Da sind nun einige Passagen drin, die in HTML dargestellt werden sollen.
HTML ist auf "true", funktioniert auch. Nun wird der Code für die Mail eben dynamisch aufgebaut und aus irgendeinem Grund kommt es dazu, dass die Mail manchmal als HTML und manchmal als Plain dargestell wird, in Abhängigkeit von einer bestimmten String-Variablen, die an einer bestimmte Stelle des HTML-Dokuments eingebettet wird.
Ich konnte aber nach ausgiebiger Analyse bisher keine plausible Fehlerursache feststellen.
Heißt der String z.B. "Bitte geben" (nur als Beispiel), erscheint die ganze Mail als HTML. Heißt der gleiche String dagegen "Bitte geben Sie eine ..." oder so ähnlich (enthält keine Sonderzeichen!), kann es passieren, dass sie Plain dargestellt wird. Lass ich den String ganz raus, erscheint sie ebenfalls als Plain.
In der ersten Mail (an den Seitenbetreiber) verschicke ich an dieser Stelle Infos über IP, Server, Zeitpunkt. Übernehme ich diesen String (zum Test) auch für den Kunden, erscheint die Mail ebenfalls als HTML. Ändere ich den String ab, wird schnell wieder Plaintext aus der Mail... allerdings ohne einen für mich ersichtlichen Grund... also Sonderzeichen o.ä. kommen wie gesagt nicht vor, sogar nicht mal unbedingt HTML.
Puh...
Da bin ich nun ziemlich überfordert.
Evtl. hat das was mit der Länge an sich zu tun? Ich weiß jetzt nicht... Muss in so einer Mail alle paar Zeichen \r\n erscheinen oder so was? Wobei ich auch das schon probiert hab, aber das löst das Problem noch nicht. Nach irgendwas in der Art schaut es hier aus, aber das muss man dann wohl wissen.
Kennt jemand diese Ecke von Fehler in HTML-Mails?
Gruß Maik
(HTML muss es eben sein, der Seitenbetreiber will das so.)
Kommentar