Wie kann ich einen Anhang dekodieren und in eine Datei schreiben?
iMap Dateianhänge speichern
Einklappen
X
-
MIME-Anhänge sind in der Regel base64-encodiert.
Such dir eins der Beispiele zum Encoding raus und dreh die Geschichte um, dann hast du´s.
-
wie denn auch, ohne dateiname...
PHP-Code:$dateiname = "anhang";
$anhang=$part->dparameters[0]->value;
$file=fopen($dateiname,'bw');
fwrite($file,base64_decode($anhang));
fclose($file);
INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |
Kommentar
-
Ich hab den Code umgeändert, aber es wird immer noch keine Datei erzeugt!
wie denn auch, ohne dateiname...
Rufe ich vor dem Code echo $anhang auf, bekomme als Resultat: Bild.jpg
Darum habe ich $anhang als Dateinamen genommen!
Was mache ich denn verkehrt?
Kommentar
-
Original geschrieben von FourSix
Was mache ich denn verkehrt?INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |
Kommentar
-
Ja, das habe ich!
Einen Download der Datei habe ich schon hinbekommen, aber ich brauche es als Speicherung auf dem Server...
neue Seite wird geöffnet und dann download:
PHP-Code:$strFileName = $part->dparameters[0]->value;
$fileContent = imap_fetchbody($inbox,$x);
$ContentType = "image/jpeg";
header ("Content-Type: $ContentType");
header ("Content-Disposition: attachment; filename=$strFileName");
echo imap_base64($fileContent);
Kommentar
-
PHP-Code:$anhang=$part->dparameters[0]->value;
$file=fopen($anhang,'bw');
$data = base64_decode($fileContent);
fwrite($file,$data);
fclose($file);
INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |
Kommentar
Kommentar