IMAP Body

ZockerLordLP

Erfahrenes Mitglied
Hallo Community


Ich habe ein Problem beim auslesen von Emails mit PHP, die Umlaute enthalten...

So sollte es eig. aussehen:
Code:
ÄÖÜ*'!"§$`?``?ßß

Allerdings sieht es nach dem Auslesen so aus:

Code:
=20 =C4=D6=DC*'!"=A7$`?``?=DF=DF

Soweit ich weiß ist es 7BIT, aber wie kann ich das decodieren?

So habe ich es ausgelesen:

PHP:
$bodyText = imap_fetchbody($mbox,$overview->msgno,1.2);
   
    if(!strlen($bodyText)>0){
        $bodyText = imap_fetchbody($mbox,$overview->msgno,1);
    }
   
        $text = substr($bodyText,0,-10);

Wie kann ich es nun "richtig" mit Umlauten einsetzten?

Danke :)
 
@saftmeister

Vielen Dank :)

Ich habe nun noch ein Problem...

Ich sende eine E-Mail mit der PHP Mailer class im HTML Format. Ich möchte aber, dass ein Text in <> steht ohne, dass es als HTML-Tag interpretiert wird.
<email@domain.de>

Wie kann ich das machen?

Danke :)
 
@saftmeister
Ok danke :)

Habe noch mal 2 Fragen...

1. Kann man im PHP Mailer (SMTP) im Header oder wo auch immer mitsenden, wenn der Empfänger aus antworten klickt, dass dort eine bestimmte Adresse eingesetzt wird?

Beispiel:
E-Mail gesendet von no-reply@domain.tld
Empfänger klickt auf Antworten und als Empfänger wird nicht no-reply@domain.tld eingestzt, sondern support@domain.tld?

2. Beim auslesen von IMAP Postfächern möchte ich nur die ungelesenen anzeigen. Dies mache ich indem ich in einer If-Abfrage schaue ob unseen (glaube so war es, habe gerade keine Möglichkeit nachzuschauen) == "U" ist. Allerdings muss ich dazu die Seite 2x aufrufen

Beispiel:
Sende E-Mail an das Postfach
Rufe die Seite 1 min später auf. Nichts passiert, da unseen == "" ist.
Sobald ich die Seite nochmal aufrufe ist unseen =="U", aber wieso? Muss die E-Mail erst empfangen werden?

Hoffe ihr könnt mir helfen
 
@saftmeister
1. Ich brauche nicht die mail() Funktion.
Wenn der Empfänger in seinem E-Mail Programm auf antworten klickt, dann so ll automatisch die andere E-Mail (support@domain.tld statt der Absender Adresse: no-reply@domain.tld) in das Feld: An eingefügt werden. Keine eigene Seite

2. Genau so mache ich es. Allerdings muss ich wie oben beschrieben die Seite dann 2x nacheinander aufrufen, damit er es erkennt.
 
1.

PHP:
 /**
* Add a "Reply-to" address.
* @param string $address
* @param string $name
* @return bool
*/
 public function addReplyTo($address, $name = '')
 {
 return $this->addAnAddress('Reply-To', $address, $name);
 }

Folglich müsstest du auf deinem PHPMailer-Objekt die Methode addReplyTo() mit den entsprechenden Werten aufrufen.
 
Zurück