18
February
2011

Mengirim Email dengan PHP

Ada cara mudah untuk mengirim email dengan PHP, PHP telah menyediakan fungsi mail() untuk mengirim email dengan PHP. Anda dapat mengirim email teks biasa, sampai dengan attachment.

Fungsi mail()

Pertama kita pahami dulu fungsi mail(). Sintaksnya seperti ini:

mail ( string to, string subject, string message [, string additional_headers [, string additional_parameters]])

Fungsi mail() memiliki 3 parameter wajib dan satu parameter opsional. Ke 3 parameter tersebut adalah email tujuan, judul email dan isi email, serta 1 parameter opsional yaitu header email.

contoh :

<?

mail(“admin@websiteanda.com”, “hello world”, “Halo pengunjung \n Terima kasih \n atas respon anda”);

?>

Jika anda coba contoh diatas maka PHP akan mengirim email ke  admin@websiteanda.com dengan judul “hello world” dan isi emailnya pada parameter ketiga. Dengan menambah \n (New Line) pada parameter ketiga, isi email akan berganti baris.

Advance Skill

Silahkan pelajari script berikut…..

Save script di bawah ini dengan nama send.php

<html>

<head>

<title>Kirim email dengan attachment</title>

</head>

<body>

<h1>Kirim Email dengan Attachment</h1>

<form action=”mail.php” method=”POST” enctype=”multipart/form-data”>

<p>Kepada: <input name=”to” value=”” /><br />

Dari: <input name=”from” value=”” /><br />

Judul: <input name=”subject” value=”” /></p>

<p>Pesan:<br />

<textarea cols=”70″ rows=”20″ name=”message”></textarea></p>

<p>File: <input name=”fileatt” /></p>

<p><input value=”Kirim” /></p>

</form>

</body>

</html>

Save script berikut dengan nama mail.php

<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>

demo bisa lihat disini

ni skrinsut hasilnya….

bisa kirim email dari mana aja semau kita,, hehe…

ads

8 Responses here...

  1. waynh says:

    Kirim email dengan attachment

    Kirim Email dengan Attachment

    Kepada:
    Dari:
    Judul:
    Pesan:

    File:

  2. waynh says:

    File:

    //kurang type ya….

    File:

  3. waynh says:

    //File:

    //

    sharusnya

    //File:
    //

  4. tika says:

    settingan di phpmyadmin nya gmn yaa untuk mengirim email, saya coba demo nya berhasil..
    sy coba di localhost yg konek inet ko ga bisa yaa.. sy mintaa konfigurasi sendmail.ini & php.ini nya dong.. makasih banyak

Leave a Reply

[+] monkey emoticons

Latest Posts

×

Categories

×

Recent Comments

×

Powered by Wordpress with an original design by Coralitus