Tentang fungsi PHP () mail
PHP email attachmentThe surat () fungsi tidak mendukung lampiran atau HTML email secara default. Anda perlu menggunakan header yang berbeda dan MIME bagian surat untuk membuat ini mungkin. Banyak shared hosting provider tidak memungkinkan penggunaan fungsi ini dan itu mungkin dinonaktifkan.
Biasanya Anda akan melewati tiga nilai ke mail () fungsi ditambah beberapa header. Dalam contoh di bawah ini saya melewatkan nilai nilai pesan, karena pesan didefinisikan sebagai bagian MIME bersama dengan lampiran.
<?php
function mail_attachment($filename, $path, $mailto, $from_mail, $from_name, $replyto, $subject, $message) {
$file = $path.$filename;
$file_size = filesize($file);
$handle = fopen($file, "r");
$content = fread($handle, $file_size);
fclose($handle);
$content = chunk_split(base64_encode($content));
$uid = md5(uniqid(time()));
$header = "From: ".$from_name." <".$from_mail.">\r\n";
$header .= "Reply-To: ".$replyto."\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
$header .= "This is a multi-part message in MIME format.\r\n";
$header .= "--".$uid."\r\n";
$header .= "Content-type:text/plain; charset=iso-8859-1\r\n";
$header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
$header .= $message."\r\n\r\n";
$header .= "--".$uid."\r\n";
$header .= "Content-Type: application/octet-stream; name=\"".$filename."\"\r\n"; // use different content types here
$header .= "Content-Transfer-Encoding: base64\r\n";
$header .= "Content-Disposition: attachment; filename=\"".$filename."\"\r\n\r\n";
$header .= $content."\r\n\r\n";
$header .= "--".$uid."--";
if (mail($mailto, $subject, "", $header)) {
echo "mail send ... OK"; // or use booleans here
} else {
echo "mail send ... ERROR!";
}
}
?>
Berikut ini adalah contoh tentang bagaimana saya menggunakan fungsi ini untuk mengirim pesan email dengan satu file .zip terlampir:
$my_file = "somefile.zip";
$my_path = "/your_path/to_the_attachment/";
$my_name = "Olaf Lederer";
$my_mail = "my@mail.com";
$my_replyto = "my_reply_to@mail.net";
$my_subject = "This is a mail with attachment.";
$my_message = "Hallo,\r\ndo you like this script? I hope it will help.\r\n\r\ngr. Olaf";
mail_attachment($my_file, $my_path, "recipient@mail.org", $my_mail, $my_name, $my_replyto, $my_subject, $my_message);
Apakah Anda mencari script untuk mengirim beberapa lampiran? Coba email PHP Script kelas keterikatan yang didasarkan pada metode yang sama dan merupakan contoh lain bagaimana mail dalam kode PHP bekerja.
Cara lain untuk mengirim email dengan lampiran menggunakan PHP
Untuk situs atau aplikasi yang pesan email merupakan bagian penting untuk bisnis Anda, Anda harus menggunakan email transaksi penyedia layanan profesional dan kelas PHP yang bekerja untuk standar SMTP. Menurut pendapat saya adalah kelas phpmailer script email sangat stabil dan fleksibel.
ConversionConversion EmoticonEmoticon