Des
Новичок
Отправка письма с картинками
Разбираюсь с отправкой письма с картинками.
Что делаю. Есть html-код, который вводит пользователь в поле для этого преданазначенное, сам добавляет картинки и т.п.
Я беру код, выдираю из него все картинки (выдираю коряво, если кто-то знает как проще, подскажите), и рассылаю по списку выбранных адресов. (Вообщем рассылка обычная)
Суть проблемы: письмо отсылается, но картинки не отображаются.
Вот код:
include('pear/Mail.php');
include('pear/Mail_mime/mime.php');
$text = $about_page; //это html, который из формы передается
$html = $about_page;
$crlf = "\r\n";
$hdrs = array(
'From' => '[email protected]',
'Subject' => 'Сообщение в сайта'
);
$mime = new Mail_mime($crlf);
$mime->setTXTBody($text);
$itog=$about_page;
$pos=strpos($itog,"src=");
$itog=substr($itog,$pos+4);
$pos1=strpos($itog,".");
if (!is_integer($pos1)) {
$pos1=0;
}
while (is_integer($pos)){
if ($pos1==0) {
$temp=str_replace('"','',substr($itog,0));
}
else {
$temp=str_replace('"','',substr($itog,0,$pos1+4));
}
$temp=str_replace("'","",$temp);
$temp=str_replace(">","",$temp);
$temp=str_replace("http://","",$temp);
$mime->addHTMLImage ("/".$temp, 'image/jpeg');
$itog=substr($itog,$pos1+4);
$pos=strpos($itog,"src=");
$itog=substr($itog,$pos+4);
$pos1=strpos($itog,".");
}
$mime->setHTMLBody($html);
$body = $mime->get();
$hdrs = $mime->headers($hdrs);
$mail =& Mail::factory('mail');
//рассылаем, result c данными пользователя получен ранее
for ($i=0;$i<count($result);$i++) {
$name="enable_".$result[$i][0];
if (isset($_POST[$name])) {
if (!empty($result[$i][5])) {
$email=$result[$i][5];
}
if (!empty($result[$i][4])) {
$email=$result[$i][4];
}
$mail->send($email, $hdrs, $body);
}
}
Разбираюсь с отправкой письма с картинками.
Что делаю. Есть html-код, который вводит пользователь в поле для этого преданазначенное, сам добавляет картинки и т.п.
Я беру код, выдираю из него все картинки (выдираю коряво, если кто-то знает как проще, подскажите), и рассылаю по списку выбранных адресов. (Вообщем рассылка обычная)
Суть проблемы: письмо отсылается, но картинки не отображаются.
Вот код:
include('pear/Mail.php');
include('pear/Mail_mime/mime.php');
$text = $about_page; //это html, который из формы передается
$html = $about_page;
$crlf = "\r\n";
$hdrs = array(
'From' => '[email protected]',
'Subject' => 'Сообщение в сайта'
);
$mime = new Mail_mime($crlf);
$mime->setTXTBody($text);
$itog=$about_page;
$pos=strpos($itog,"src=");
$itog=substr($itog,$pos+4);
$pos1=strpos($itog,".");
if (!is_integer($pos1)) {
$pos1=0;
}
while (is_integer($pos)){
if ($pos1==0) {
$temp=str_replace('"','',substr($itog,0));
}
else {
$temp=str_replace('"','',substr($itog,0,$pos1+4));
}
$temp=str_replace("'","",$temp);
$temp=str_replace(">","",$temp);
$temp=str_replace("http://","",$temp);
$mime->addHTMLImage ("/".$temp, 'image/jpeg');
$itog=substr($itog,$pos1+4);
$pos=strpos($itog,"src=");
$itog=substr($itog,$pos+4);
$pos1=strpos($itog,".");
}
$mime->setHTMLBody($html);
$body = $mime->get();
$hdrs = $mime->headers($hdrs);
$mail =& Mail::factory('mail');
//рассылаем, result c данными пользователя получен ранее
for ($i=0;$i<count($result);$i++) {
$name="enable_".$result[$i][0];
if (isset($_POST[$name])) {
if (!empty($result[$i][5])) {
$email=$result[$i][5];
}
if (!empty($result[$i][4])) {
$email=$result[$i][4];
}
$mail->send($email, $hdrs, $body);
}
}