Mengirim Email dalam Bentuk HTML

Mengirim Email dalam Bentuk HTML

Setelah pada postingan sebelumnya dibahas tentang cara mengirim email dengan PHP, kali ini merupakan postingan lanjutannya, yaitu mengirim email dalam bentuk HTML. Mengirim email dengan cara ini, memungkinkan Anda untuk menyisipkan kode-kode HTML dalam pesan email yang akan Anda kirim nantinya.

Untuk mengirim email dalam bentuk HTML juga tidaklah sulit. Kita hanya perlu memberitahukan email tujuan bahwa email yang kita kirim bentuknya HTML. Bagaimana caranya? tentu saja dengan menambahkan header untuk menunjukkan bahwa email kita email HTML. Oke, langsung saja coba kode php berikut ini:


<?php
mail('admin@websitesaya.com', 'Judul Email',
'<html><body><p>Halo admin, <br>Apa Kabar <br>Anda hari ini?</p></body></html>',
"To: Nama Penerima<admin@domainanda.com>\n" .
"From: Nama Pengirim<webmaster@domain-kirim.com>\n" .
"MIME-Version: 1.0\n" .
"Content-type: text/html; charset=iso-8859-1");

 


Header yang kita gunakan untuk mengirim email HTML adalah:


 


"MIME-Version: 1.0\n" .
"Content-type: text/html; charset=iso-8859-1");

Dengan menambahkan Header seperti itu, maka email tersebut akan dibaca sebagai file HTML dan tentu saja karena email kita HTML kita bisa memasukkan kode HTML apa saja kedalam email.

Namun yang perlu diingat, jika email penerima tidak mensupport HTML, maka email tersebut tidak akan terbuka. Tetapi sebagian besar alamat email saat ini sudah mendukung HTML. Ingat, sebagian besar, berarti masih ada yang belum mendukung HTML.
Email dengan Attachment.

Nah, Bagaimana jika mengirim email disertai dengan attachment? Pertama-tama yang kita lakukan kita memerlukan form untuk mengupload filenya, dan kita kemudian mengambil variabel file yang diupload tersebut. Kemudian file yang di upload itu di encode dalam bentuk file binary ataupun file text menggunakan encoding base64.

Fungsi yang digunakan untuk mengencoding file attachment adalah fungsi PHP base64_encode(). Hasil dari encode tersebut kemudian dimasukkan ke header email, kemudian selanjutnya untuk dikirim.

Untuk mengirim email disertai dengan attachment, diperlukan dua buah file. File yang pertama adalah file yang berfungsi untuk mengupload file attachment, dan yang satunya lagi adalah file yang berfungsi membaca file yang diupload, kemudian meng-encode, dan mengirim email beserta attachmentnya.


Langsung saja kita buat file yang pertama. Buat file dengan nama  form.html dan isilah dengan kode berikut:



<html>
<head>
<title>Kirim email dengan attachment</title>
</head>
<body>
<h1>Kirim Email dengan Attachment</h1>
<form action="sendmail.php" method="POST" enctype="multipart/form-data">
<p>Kepada: <input type="text" name="to" value="" /><br />
Dari: <input type="text" name="from" value="" /><br />
Judul: <input type="text" name="subject" value="" /></p>
<p>Pesan:<br />
<textarea cols="70" rows="20" name="message"></textarea></p>
<p>File: <input type="file" name="fileatt" /></p>
<p><input type="submit" value="Kirim" /></p>
</form>
</body>
</html>




Oke anda pasti sudah paham kode tersebut, karena kode tersebut hanya merupakan kode HTML biasa. Dimana ketika tombol kirim diklik, maka kita memanggil file sendmail.php.

Sekarang buatlah file yang satunya lagi dengan nama sendmail.php dan isilah dengan kode berikut ini:



<html>
<head>
<title> Mengirim Email dengan Attachment </title>
</head>
<body>
<?
$to = $_POST['to'];
$from = $_POST['from'];
$subject = $_POST['subject'];
$message = $_POST['message'];

$fileatt = $_FILES['fileatt']['tmp_name'];
$fileatt_type = $_FILES['fileatt']['type'];
$fileatt_name = $_FILES['fileatt']['name'];

$headers = "From: $from";

if (is_uploaded_file($fileatt)) {
$file = fopen($fileatt,'rb');
$data = fread($file,filesize($fileatt));
fclose($file);
$semi_rand = md5(time());
$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
$headers .= "\nMIME-Version: 1.0\n" .
"Content-Type: multipart/mixed;\n" .
" boundary=\"{$mime_boundary}\"";
$message = "Email dengan attachment dan MIME format.\n\n" .
"--{$mime_boundary}\n" .
"Content-Type: text/plain; charset=\"iso-8859-1\"\n" .
"Content-Transfer-Encoding: 7bit\n\n" .
$message . "\n\n";
$data = chunk_split(base64_encode($data));

$message .= "--{$mime_boundary}\n" .
"Content-Type: {$fileatt_type};\n" .
" name=\"{$fileatt_name}\"\n" .
"Content-Transfer-Encoding: base64\n\n" .
$data . "\n\n" .
"--{$mime_boundary}--\n";
}

$ok = @mail($to, $subject, $message, $headers);
if ($ok) {
echo "<p>Email sudah dikirim</p>";
} else {
echo "<p>Email gagal terkirim!</p>";
}
?>
</body>
</html>




Jika sudah, jalankan form.html, isilah form-form yang tersedia. Jangan lupa untuk mengambil file dari komputer anda, kemudian kirimkan email tersebut.

Mudah kan?. Selamat mencoba...



Lainnya

Solusi Server Apache XAMPP Tidak Bisa Running

Kamis, 12 Juni 2014 | 18:04:22
Buat yang biasa meng Setelah cari-cri di internet, ada banyak solusi yang menyarankan untuk mengganti port:80

Kumpulan Status Facebook

Jumat, 19 April 2013 | 16:43:17
Kumpulan Status Facebook Lucu, Romantis pasti lagi pada dicariin banyak orang nie. Maklum, belakangan banyak y

IMTalk Sarana Tepat Untuk Optimasi Seo Offpage

Selasa, 19 Maret 2013 | 16:14:36
IMTalk.org Sarana Tepat Untuk Optimasi Seo Offpage

Bagaimana Google Mengenali Invalid Click Pada Adsense Anda

Senin, 3 Desember 2012 | 07:47:37
Program periklanan yang banyak digeluti oleh para pengguna yang mencari rejeki diinternet. Situs yang didaftar

Menghapus Tweet Secara Massal

Selasa, 13 November 2012 | 05:52:57
MUNGKIN kita pernah mengalami masa-masa labil dimana kita sering berkicau di twitter dengan update status gala

Memilih Data MySql dengan Dua Kolom 'ORDER BY'

Rabu, 18 Juli 2012 | 07:12:28
Biasanya, dalam sebuah perintah SELECT pada MySql, peng-index-an dibuat berdasarkan satu kolom data saja. Misa

Twitter, Menambah Follower Secara Instant dan Alami

Rabu, 27 Juni 2012 | 07:20:23
Banyak keuntungan yang kita peroleh bila kita memiliki account twitter, terutama untuk para blogger, dimana tw

Mempercepat Booting pada Windows 7

Selasa, 8 Mei 2012 | 04:55:57
Waktu booting yang singkat tentu akan menyenangkan. Percepat waktu booting Windows 7 sobat dengan menambah jum

Bagaimana Menggunakan Font Cantik dari Google Web Font

Sabtu, 14 April 2012 | 04:02:10
Seperti kita ketahui bahwa salah satu daya tarik pengunjung yang datang ke website adalah tampilan dari websit

Apa itu Mode Biner?

Sabtu, 10 Maret 2012 | 02:14:03
Pada postingan sebelumnya, Saya ada membahas mengenai bagaimana cara upload data dari localhos ...

Populer

Apakah Website Anda Sudah Mendukung Mobile Version?

Senin, 2 Mei 2011 | 18:46:47
Sebelum memulai, ada pertanyaan yang harus dijawab.

view: 699345

Backlinks Exchange Otomatis

Minggu, 17 April 2011 | 15:15:10
Ini merupakan Program otomatis Link Exchange gratis untuk semua pengunjung. Anda harus mengetahui betapa penti

view: 664143

Cara Mengirim Email dengan PHP

Rabu, 11 Mei 2011 | 07:47:21
Biasanya jika Anda menyewa sebuah hosting, anda akan diberi fasilitas untuk ...

view: 19639

Kode Negara di Dunia dalam Format MySql

Sabtu, 17 Desember 2011 | 13:39:58
Kode negara (country Code) dimaksudkan untuk mengetahui nama negara dari singkatannya. Biasanya kode negara di

view: 19543

Apakah yang Dimaksud dengan Keyword?

Selasa, 29 Maret 2011 | 16:14:58
Pada postingan kali ini, saya akan membahas tentang

view: 11894

Partisi Harddisk Tidak Terbaca Setelah Install Windows 7

Kamis, 7 Juli 2011 | 07:11:29
Mungkin Anda pernah mengalami apa yang saya alami. Partisi Harddisk Tidak Terbaca ...

view: 11526

URL Rewriting, Agar URL Terlihat Cantik dan Mudah Diingat

Senin, 2 Agustus 2010 | 03:24:59
Buat Anda yang mungkin sudah lama mendalami duni per-website-an mungkin mod_rewrite bukanlah hal yang asing.

view: 8382

Membuat Halaman Refresh Otomatis

Jumat, 12 November 2010 | 02:34:46
Fungsi refresh di gunakan untuk membuat “penyegaran” kembali halaman blog ataupun website. Fungsi

view: 8372

Akhirnya Ada Klik di Google Adsenseku

Jumat, 1 April 2011 | 01:41:41
Setelah beberapa minggu account adsense saya di

view: 8217

Cara Submit Website ke Search Engine

Minggu, 3 April 2011 | 12:50:34
Apabila saat ini kamu sedang mengembangkan sebuah website, tentunya website tersebut hanya kamu saja yang tahu

view: 8124
find at facebook follow on twitter YM RSS FEED
Sitemap:
home | contact | RSS | portofolio | php | javascript | tutorial | MySql | Ajax | web development | web design | webmaster | graphic design | printing design | website consultant | internet | bisnis internet | earn money | pay pal | alert pay | marketing online | viral marketing | ping service | jasa pembuatan website | jasa seo | auto ping | backlink | ping services
Privacy Policy | Discalimer | DMCA | Contact Us DMCA.com Protection Status

copy right 2008-2017 www.arieweb.net
Free counters! vipqiuqiu99 vipqiuqiu99