Forum Webscript.Ru
Программирование => PHP => Тема начата: lbpf от 17 Декабря 2003, 06:17:46
-
Как правильно сформировать заголовок для письма Html-ного с вложенной в него картинкой, а то у меня получается картинку только приаттачить. А хотелось бы чтобы она отображалась в хтмл-е.
$dir-директория
$filename=файл
$text=соот хтмл
$f = fopen($dir.$filename,"rb");
$un = strtoupper(uniqid(time()));
$head = "From: $from\\r\\n";
$head .= "To: $to\\r\\n";
$head .= "Subject: $subj\\r\\n";
$head .= "X-Mailer: PHPMail Tool\\r\\n";
$head .= "Reply-To: $from\\r\\n";
$head .= "Mime-Version: 1.0\\r\\n";
$head .= "Content-Type:multipart/mixed;";
$head .= "boundary=\\"------------".$un."\\"\\r\\n\\r\\n";
$zag = "------------".$un."\\r\\n";
$zag .= "Content-Disposition: inline\\r\\n";
$zag .= "Content-Length: $len\\r\\n";
$zag .= "Content-Transfer-Encoding: binary\\r\\n";
$zag .= "Content-Type: text/html; charset=windows-125\\r\\n$text\\r\\n\\r\\n";
$zag .= "Content-Type: image/jpg;";
$zag .= "name=\\"$filename\\"\\r\\n";
$zag .= "Content-Transfer-Encoding: base64\\r\\n";
$zag .= "Content-ID: <$filename>\\r\\n\\r\\n";
$zag .= "Content-Disposition:attachment;";
$zag .= "filename=\\"$filename\\"\\r\\n\\r\\n";
$zag .= chunk_split(base64_encode(fread($f,filesize($dir.$filename))))."\\n";
if (!@mail("$to", "$subj", $zag, $head))
return 0;
else
return 1;
}
Но картинка просто аттачится :((
в поле $text картинка выглядит так
"
"
-
в поиске должно быть
у тебя писмо multipart, но я что-то не заметил в нем частей.
-
В общем чтобы нормально отображалась картинка в теле письма надо сделать так:
function XMail( $from, $to, $subj, $text, $filename) {
$dir="директория";
$f = fopen($dir.$filename,"rb");
$un = strtoupper(uniqid(time()));
$head = "From: $from\\r\\n";
$head .= "To: $to\\r\\n";
$head .= "Subject: $subj\\r\\n";
$head .= "X-Mailer: PHPMail Tool\\r\\n";
$head .= "Reply-To: $from\\r\\n";
$head .= "Mime-Version: 1.0\\r\\n";
$head .= "Content-Transfer-Encoding:8bit\\r\\n";
$head .= "Content-Type:multipart/related;";
$head .= "boundary=\\"----------".$un."\\"\\r\\n\\r\\n";
$zag = "------------".$un."\\r\\nContent-Type:text/html; charset=\\"Windows-1251\\"\\r\\n";
$zag .= "Content-Transfer-Encoding: 8bit\\r\\n\\r\\n$text\\r\\n\\r\\n";
$zag .= "------------".$un."\\r\\n";
$zag .= "Content-Type:image/gif;";
$zag .= "name=\\"".$filename."\\"\\r\\n";
$zag .= "Content-Disposition:inline;";
$zag .= "filename=\\"".$filename."\\"\\r\\n";
$zag .= "Content-ID: ".$filename."\\r\\n";
$zag .= "Content-Transfer-Encoding:base64\\r\\n";
$zag .= chunk_split(base64_encode(fread($f,filesize($dir.$filename))))."\\r\\n";
$zag .= " ------------".$un."\\r\\n\\r\\n";
return @mail("$to", "$subj", $zag, $head);
}
Спасибо за внимание :)