Emails verarbeiten mit procmail und PHP

deinertsche

Erfahrenes Mitglied
Hallo!

Ich möchte eingehende emails verarbeiten mit einem PHP Skript und habe dazu folgendes in die .procmailrc geschrieben

:0
* ^To.*test@foobar.de
|/usr/bin/php -f /www/htdocs/xxxxxx/parser.php

So weit, so gut. Das Skript parser.php wird aufgerufen und per
$stdin = fopen("php://stdin","r");
kann ich darin den Inhalt der eingehenden email auslesen.

Aber wie bekomme ich email-Attachments, wie z.B. JPG Dateien, die sich in der email befinden?
 
Ok, habs jetzt einfach über billiges Text parsen gelöst. Nicht gerade elegant aber es t.

$stdin = fopen("php://stdin","r");
while(!feof($stdin)) {
$email .= fread($stdin, 1024);
}

$temp = explode("Content-Transfer-Encoding: base64", $email);
$attachment = str_replace("\n","",trim($temp[1]));
$jpg = base64_decode($attachment);

$fp = fopen("/www/htdocs/xxxxx/test.jpg", "w+");
fwrite($fp, $jpg);
fclose ($fp);



Den Dateinamen hab ich jetzt erstmal statisch festgelegt aber der steht natürlich auch in der mail:

Content-Disposition: inline;
filename=Foto.jpg
Content-Type: image/jpeg;
 
Zuletzt bearbeitet:
Zurück