PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Und nochmal Email mit Attachment


Günni
03.07.2002, 01:45:22
HI,
wie versende ich eine Email mit Anhang ohne irgendwelche Klassen??? Er schickt zwar eine Datei als Anhang mit, die ist aber immer nur maximal 1 kb gross und lässt sich nicht öffnen.
Hier mal mein momentaner Quellcode:


<?
$boundary = "strtoupper(md5(uniqid(time())))";
$dateiname="datei.zip";
$datei_inhalt = chunk_split(base64_encode(fread(fopen($dateiname, "r"), filesize($dateiname))));



$header = "From: gb
";
$header .= "MIME-Version: 1.0
";

$header .="Content-Type: multipart/mixed; $boundary
";
$header .="--$boundary
";
$header .="Content-Type: text/plain
";
$header .="Content-Transfer-Encoding: 8bit
";
$header .="Hallo, hoffe der anhang lässt sich öffnen
";
$header .="--$boundary
";
$header .="Content-Type: application/x-zip-compressed; name=datei.zip
";
$header .="Content-Transfer-Encoding: base64
";
$header .="Content-Disposition: attachment; filename=datei.zip
";
$header .="

".$datei_inhalt;
$header .="--$boundary--";

mail("guenni@nightmare.de","","",$header)

?>

Bei mir stürzt dann die PHP.EXE ab und bringt folgende Fehlermeldung:

Premature end of script headers: php.exe

Hoffe mir kann jemand sagen warum dies nicht geht...

Email: nightmare20de@yahoo.de

Dago
04.07.2002, 10:07:40
Benutzt du Windows?
In dem Fall hat die mail()-Funktion einen Bug, der "aktiv" wird, wenn die Gesamtgröße der Mail über 40 (glaub ich) kb liegt - somit stürzt PHP ab.
Um das zu verhindern musst du den Mailverkehr mit dem Server selbst steuern, das geht so:
http://www.dclp-faq.de/q-mail-windows.html

Dago
04.07.2002, 10:15:09
Achso, nochwas...
Wenn der Attachment eine Binär-Datei ist, musst du ihn per "rb" statt "r" öffnen (nur bei Windows).

Dago
04.07.2002, 10:17:46
Und noch ein Tipp *gg*
Gib mal bei chunk_split als 2. Parameter 72 an (vorsichtshalber).

Günni
04.07.2002, 13:38:18
In nutze Windows 2000, einen Apache Server 2.0.39 und PHP 4.2.1.
Habe es schon mit einer Textdatei von 3 KB versucht, dies hat leider aber auch nicht geklappt.
Das mit dem öffnen statt "r" "rb" zu nutzen versuch ich doch mal heut abend glatt.

mfg
Günni

Günni
05.07.2002, 00:18:06
Hi,
das Script funzt, aber nur bei Dateien die Maximal 2 kb gross sind.

mfg
Günni