Отправка письма с помощью функции php mail() дело нехитрое, но когда нужно отправить письмо с вложением и не одним? Нужно внимательно читать комментарии.
Скрипт отправки сообщения с несколькими вложениями был взят с сайта PHP.net и размещен для тех кто не нашел его в комментах:
function multi_attach_mail($to, $files, $sendermail){ $from = "Files attach <".$sendermail.">";//от кого $subject = date("d.M H:i")." F=".count($files); //заголовок письма $message = date("Y.m.d H:i:s")." ".count($files)." attachments"; //сообщениее (тело письма) $headers = "From: $from"; // boundary $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; // заголовки для вложения $headers .= " MIME-Version: 1.0 " . "Content-Type: multipart/mixed; " . " boundary="{$mime_boundary}""; // multipart boundary $message = "--{$mime_boundary} " . "Content-Type: text/plain; charset="iso-8859-1" " . "Content-Transfer-Encoding: 7bit " . $message . " "; // подготовка вложений for($i=0;$i<count($files);$i++){ if(is_file($files[$i])){ $message .= "--{$mime_boundary} "; $fp = @fopen($files[$i],"rb"); $data = @fread($fp,filesize($files[$i])); @fclose($fp); $data = chunk_split(base64_encode($data)); $message .= "Content-Type: application/octet-stream; name="".basename($files[$i])."" " . "Content-Description: ".basename($files[$i])." " . "Content-Disposition: attachment; " . " filename="".basename($files[$i]).""; size=".filesize($files[$i])."; " . "Content-Transfer-Encoding: base64 " . $data . " "; } } $message .= "--{$mime_boundary}--"; $returnpath = "-f" . $sendermail; $ok = @mail($to, $subject, $message, $headers, $returnpath); //отправка сообщения if($ok){ return $i; } else { return 0; } }
Использовать эту функцию довольно просто:
$files = array(); //тут заносим файлы в массив например так: //$files[0]= "/directory/filename.jpg" //$files[1]= "/directory/css/my.css" multi_attach_mail("email получателя", $files, "email отправителя"); //вызываем функцию
Вот и все, проще некуда, и не нужно изобретать велосипед.
Кстати, в комментариях можно также найти и другие полезные вещи.