Markus: Gleichzeichen im Emailtext

Hallo,

ich habe mir bei phpclasses.org die Klasse composeMail heruntergeladen und in mein Projekt eingebaut. Mit dieser Klasse können Emails erstellt und versendet werden.

Eine Funktion dieser Klasse ist die:
function addHtmlBodyPart($html) {
$this->bodyParts["text/html"]="<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">\n<html><head><meta http-equiv=Content-Type content="text/html; charset=iso-8859-1"><META content="MSHTML 6.00.2800.1276" name=GENERATOR></head><body>".$html."</body></html>";
}

Mit dieser Funktion wird der HTML BEreich der Email erzeugt.

Der Variable $html habe ich vorher folgendes übergeben
$html = "Hallo zusammen";

Funktioniert auch prima!

Wenn ich jetzt aber dieses übergebe:
"Hallo zusammen, heute=Freitag"

kommt in der Email als Text folgendes an:
"Hallo zusammen, heute=eitag"

Sobald ich also ein Gleichzeichen in meinem Text habe, werden die folgenden beiden Zeichen gelöscht. Nun möchte ich aber einen Link mit Variablenübergabe in meiner Mail haben und daher brauche ich Gleichzeichen.

Ich habe schon versucht das Gleichzeichen durch chr(61) zu ersetzen, aber das funktioniert auch nicht. Selbes Resultat.

Jat einer von Euch eine Idee?

DANKE!
CU Markus

  1. Hi,

    Wenn ich jetzt aber dieses übergebe:
    "Hallo zusammen, heute=Freitag"

    kommt in der Email als Text folgendes an:
    "Hallo zusammen, heute=eitag"

    Sobald ich also ein Gleichzeichen in meinem Text habe, werden die folgenden beiden Zeichen gelöscht. Nun möchte ich aber einen Link mit Variablenübergabe in meiner Mail haben und daher brauche ich Gleichzeichen.

    = ist das Escape-Zeichen in Mails. Ersetze es durch =3D

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    Schreinerei Waechter
    Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
    1. Funktioniert,
      ich habe das = durch =3D ersetzt. Ob er jetzt immer noch die nächsten zwei Zeichen löscht und deshalb = stehen bleibt, oder er wirklich =3D als = Zeichen interpretiert, kann ich jetzt zwar nicht sagen, aber es funktioniert!

      DANKE, Markus

      1. echo $begrüßung;

        Ob er jetzt immer noch die nächsten zwei Zeichen löscht und deshalb = stehen bleibt, oder er wirklich =3D als = Zeichen interpretiert, kann ich jetzt zwar nicht sagen, aber es funktioniert!

        Dann mach mal aus dem =3D ein =FC draus. Das muss dann ein ü ergeben.

        echo "$verabschiedung $name";

  2. Moin,

    ich habe mir bei phpclasses.org die Klasse composeMail heruntergeladen und in mein Projekt eingebaut. Mit dieser Klasse können Emails erstellt und versendet werden.

    Zeig uns doch den relevanten Code oder noch besser eine Beispielausgabe.

    Wenn ich jetzt aber dieses übergebe:
    "Hallo zusammen, heute=Freitag"

    kommt in der Email als Text folgendes an:
    "Hallo zusammen, heute=eitag"

    deutet nämlich darauf hin, dass du angegeben hast, dass du eine spezielle Codierung (nämlich Quoted Printable) verwenden möchtest, ohne dich danach an diese Codierung zu halten. Mach es einfach richtig und es wird funktionieren.

    --
    Henryk Plötz
    Grüße aus Berlin
    ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
    ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~