Witam.
Zrobiłem sobie skrypcik do wysyłania maili ze sklepu.
Wygląda to tak:
<?php
require('classes/mail.php');
$mail = new Mailer();
$mail->Priority = 3;
$mail->CharSet = 'utf-8';
$mail->AddAddress($subscribers['mail_subscribers_email'], $subscribers['mail_subscribers_name']);
preg_match_all('/src="([^"]+)"/Ui', $email['mail_description'], $out, PREG_PATTERN_ORDER
); $tekst = $email['mail_description'];
$i=0;
for($i=0
, $n=sizeof($out); $i<$n; $i++){ if(strstr($out[$i][0], 'src=')){ $nick = substr($name[1
], 0
, -5
); } else {
$nick = substr($name[1
], 0
, -4
); }
$mail->AddEmbeddedImage($path, $nick, $name[1], "base64", "image/".$type);
$tekst = str_replace($out[$i][0], 'src="cid:'.$nick.'"', $tekst); }
}
$mail->From = $email_address['conf_value'];
$mail->FromName = $page_name['conf_value'];
$mail->IsHTML(true);
$mail->Subject = $email['mail_title'];
if($email_type['conf_value'] == 'mail'){
$mail->Mailer = "mail";
$mail->IsMail();
} else {
$mail->IsSMTP();
$mail->Host = $email_host['conf_value'];
$mail->SMTPAuth = true;
$mail->Username = $email_login['conf_value'];
$mail->Password = $email_pass['conf_value'];
}
$mail->Body = $tekst;
$mail->WordWrap = 50;
$mail->Send();
$mail->ClearAddresses();
?>
Maile są wysyłane, problem polega na tym, że w niektórych programach pocztowych obrazek z treści strony się nie pojawia (np w thunderbirdzie, lub w poczcie na wp) ale już np w outlook expressie jest elegancko pokazywany. Czy ktoś miał taki problem i udało mu się go jakoś obejść?