Halo,
Nggg... udah dilihat belon kodenya yah? :-)
Contoh saya sih untuk save jpeg. Tapi ini cuma contoh.
Coba dilihat dibagian2 ini:
--
$decoder = new Mail_mimeDecode($contents);
$s = $decoder->decode($params);
// Untuk melihat struktur data dari $s, pake print_r
//print_r($s);
--
Coba pake print_r dulu untuk ngelihat seluruh struktur data mime email anda. Disini
saya koment agar output nggak berantakan.
Contoh dibawah ini pake "image", bisa dicheck "ctype_primary == 'text'" lalu
"ctype_secondary == 'plain'" di bagian partsnya. Kalo udah ketemu, mime yg anda mau,
tinggal diurus dibagian "body" (mau disave atau yg lain).
--
if (isset($s->parts))
{
foreach($s->parts as $part)
{
// check ctype_primary untuk jenis mime (image, text, dsb)
if ($part->ctype_primary == 'image')
image_handler($part);
}
}
--
Kalo dilihat dari struktur data yg diretur dari "decode" (pake print_r), nggak perlu
pake recursive - cukup loop di bagian "parts" property.
Semoga membantu,
Andrew...
On Tue, Feb 17, 2004 at 04:35:20PM +0700, Toni Stiawan wrote:
> Terima kasih atas contohnya.
> Tapi yang saya maksud adalah bagaimana cara
> Mendapatkan text/plain atau text/html yang ada
> Pada email tersebut bukan cara menyimpan attachment.
>
> Sebab kadang2 ada email yang
> - multipart/related
> - multipart/relative
> - multipart/mixed
> - multipart/rfc822
> Dll
>
> Saya coba buat function recursive utk mencari text/plain atau html
> Kadang ada error ttg limited memori.
>
> Ada yang bisa kasih contoh lain ?
>
> Terima kasih
> Toni ST
>
> -----Original Message-----
> From: Andrew Hadinyoto [mailto:[EMAIL PROTECTED]
> Sent: 17 Februari 2004 15:46
> To: [EMAIL PROTECTED]
> Subject: Re: [linux-programming] Contoh aplikasi mimedecode
>
>
> Halo,
>
> Untuk ngetest code berikut ini:
> 1. Save code berikut ke file - "test.php"
> 2. Kirim mail attachment ke anda sendiri. Save mail tersebut ke sebuah
> file lengkap dengan header dan attachment (Base64). 3. Test dengan "php
> test.php" 4. Attachment akan disimpan sebagai file di current direktori.
>
> Untuk web applikasi anda, perlu banyak penyesuaian - ini cuma sekedar
> contoh :-)
>
> --- PHP Code Start ---
> <?
> require_once 'Mail/mimeDecode.php';
>
> // Ganti ke nama email file yg baru disave
> $filename = "/tmp/mailtest";
>
> $params['include_bodies'] = true;
> $params['decode_bodies'] = true;
> $params['decode_headers'] = true;
> $params['input'] = $input;
> $params['crlf'] = "\r\n";
>
>
> $handle = fopen($filename, "r");
> $contents = fread($handle, filesize($filename));
>
> $decoder = new Mail_mimeDecode($contents);
> $s = $decoder->decode($params);
>
> // Untuk melihat struktur data dari $s, pake print_r
> //print_r($s);
>
> if (isset($s->parts))
> {
> foreach($s->parts as $part)
> {
> // check ctype_primary untuk jenis mime (image, text, dsb)
> if ($part->ctype_primary == 'image')
> image_handler($part);
> }
> }
>
>
> function image_handler($p)
> {
> $filename = $p->ctype_parameters['name'];
>
> // untuk windows, "wb" untuk binary file. Linux cuma "w"
> $fh = fopen($filename, "wb");
> // tulis body dari attachment ke file
> fwrite($fh, $p->body, strlen($p->body));
> fclose($fh);
> }
>
> ?>
>
> --- PHP Code End ---
>
> Semoga berguna,
> Andrew...
>
>
> On Tue, Feb 17, 2004 at 01:17:01PM +0700, Toni Stiawan wrote:
> > Dear temans,
> >
> > Saya sedang mencoba membuat aplikasi pembaca email menggunakan PHP.
> > Saya menggunakan PEAR mimedecode sebagai class utama aplikasi saya.
> > Namun saya kesulitan untuk mengambil content email html/teks yang
> > disertai Attachment.
> >
> > Adakah diantara temans sekalian yang sudah punya pengalaman dgn hal
> > ini?
> >
> > Terima kasih.
> > Toni ST
> >
> > --
> > Berhenti langganan: [EMAIL PROTECTED]
> > Arsip dan info: http://linux.or.id/milis.php
>
> --
> Berhenti langganan: [EMAIL PROTECTED]
> Arsip dan info: http://linux.or.id/milis.php
>
>
> --
> Berhenti langganan: [EMAIL PROTECTED]
> Arsip dan info: http://linux.or.id/milis.php
--
Berhenti langganan: [EMAIL PROTECTED]
Arsip dan info: http://linux.or.id/milis.php