Hoi,
ik heb een .forward bestand aangemaakt op een linux server met sendmail om zo mijn mail op te vangen met een PHP script.
Ik wil het subject controleren op een bepaald woord en als dit voorkomt, de mail doorsturen, anders niet.
Dit gaat allemaal goed, behalve het doorsturen.
Als ik met bv. outlook een html mail stuur met plaatjes e.d. wordt het een multipart mail, en als ik deze doorstuur krijg ik de broncode in mijn mail.
zo parse ik de mail (gevonden op internet).
Dat gaat dus goed. Ik heb nu $subject om deze te checken op het woord.
Nu wil ik de mail verder in originele staat doorsturen, maar dat wil maar niet lukken.
Kan iemand me verder helpen, ik kom er niet echt meer uit.
ik heb een .forward bestand aangemaakt op een linux server met sendmail om zo mijn mail op te vangen met een PHP script.
Ik wil het subject controleren op een bepaald woord en als dit voorkomt, de mail doorsturen, anders niet.
Dit gaat allemaal goed, behalve het doorsturen.
Als ik met bv. outlook een html mail stuur met plaatjes e.d. wordt het een multipart mail, en als ik deze doorstuur krijg ik de broncode in mijn mail.
zo parse ik de mail (gevonden op internet).
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| // read from stdin $fd = fopen("php://stdin", "r"); $email = ""; while (!feof($fd)) { $email .= fread($fd, 1024); } fclose($fd); // handle email $lines = explode("\n", $email); // empty vars $from = ""; $subject = ""; $headers = ""; $message = ""; $splittingheaders = true; for ($i=0; $i < count($lines); $i++) { if ($splittingheaders) { // this is a header $headers .= $lines[$i]."\n"; // look out for special headers if (preg_match("/^Subject: (.*)/", $lines[$i], $matches)) { $subject = $matches[1]; } if (preg_match("/^From: (.*)/", $lines[$i], $matches)) { $from = $matches[1]; } } else { // not a header, but message $message .= $lines[$i]."\n"; } if (trim($lines[$i])=="") { // empty line, header section has ended $splittingheaders = false; } } |
Dat gaat dus goed. Ik heb nu $subject om deze te checken op het woord.
Nu wil ik de mail verder in originele staat doorsturen, maar dat wil maar niet lukken.
Kan iemand me verder helpen, ik kom er niet echt meer uit.