Nodo56
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Добрый день! Есть проблема при отправки почты с вложением функцией mail(). Почему то из всех прикрепленных файлов приходит только первый.Однако если отправлять на почтовый ящик на mail.ru то приходят все,но все кроме первого показываются как битые. Но их можно скачать и они будут отображаться как нормальные файлы. Отправляю картинки. Вот пример кода: <?php class MyMail { protected static $name; protected static $email; protected static $post; protected static $text; protected static $header; protected static $file; protected static $file_size; protected static $handle; protected static $content; protected static $uid; protected static $whiteList; protected static $error; public static function sendMail($name,$email,$text,$file="0") { self::$name = $name; self::$email = $email; self::$text = $text; self::$content = chunk_split(base64_encode(self::$content)); self::$uid = md5(uniqid(time())); self::$header = "From: ".self::$email." <Foxclore>\r\n"; self::$header .= "Reply-To: Foxclore\r\n"; self::$header .= "MIME-Version: 1.0\r\n"; self::$header .= "Content-Type: multipart/mixed; boundary=\"".self::$uid."\"\r\n\r\n"; self::$header .= "This is a multi-part message in MIME format.\r\n"; self::$header .= "--".self::$uid."\r\n"; self::$header .= "Content-type:text/plain; charset=UTF-8\r\n"; self::$header .= "Content-Transfer-Encoding: 7bit\r\n\r\n"; for($i=0;$i<=count($_FILES['img']['name']);$i++) { if(isset($_FILES["img"]["name"][$i])) { copy($_FILES["img"]["tmp_name"][$i],"files/".$_FILES["img"]["name"][$i]); self::$file = "files/".$_FILES["img"]["name"][$i]; self::$file_size = filesize(self::$file); self::$handle = fopen(self::$file, "r"); self::$content = fread(self::$handle, self::$file_size); fclose(self::$handle); self::$header .= self::$text."\r\n\r\n"; self::$header .= "--".self::$uid."\r\n"; self::$header .= "Content-Type: application/octet-stream\"\r\n"; self::$header .= "Content-Transfer-Encoding: base64\r\n"; self::$header .= "Content-Disposition: attachment; filename=\"".$_FILES["img"]["name"][$i]."\"\r\n\r\n"; self::$content = chunk_split(base64_encode(self::$content)); self::$header .= self::$content."\r\n\r\n"; self::$header .= "--".self::$uid."--"; } } mail('vlad_564@ukr.net', self::$post, "", self::$header); header("Location: ".$_SERVER["HTTP_REFERER"]); } } ?> Заранее благодарен! |