Я использую PHPMailer
, чтобы отправить регистрационное подтверждение электронной почты своим пользователям с полным html-файлом. Письмо отображается отлично, за исключением того, что изображения не загружены.PHPMailer html не показывает изображения
Здесь я прилагаю мой PHP код:
$mail = new PHPMailer(true);
$mail->CharSet = 'utf-8';
$mail->setFrom($this->Settings->SUPPORT_EMAIL_ADDRESS);
$mail->AddAddress($email);
$mail->Subject = dblang('registration_confirm_email_subject');
if (file_exists(APPPATH . '/views/email/registration/confirm.txt.' . $this->lang->lang() . '.php')) {
$mail->AltBody = $this->load->view('_email/registration/confirm.txt.' . $this->lang->lang() . '.php',
$emailData, true);
}
$mail->isHTML(true);
$mail->Body = $this->load->view('_email/registration/confirm.html.' . $this->lang->lang() . '.php',
$emailData, true);
if($mail->send()) {
swal_success('registration_email_send_title', 'registration_email_send_text');
redirect(site_url('home'));
}
Здесь я помещал часть HTML кода. Я пробовал с относительным и абсолютным urlfor пути к картинке:
<img src="../../../../../../bets/assets/email/welovesports.png" alt="We Love Sports" border="0" width="290" height="92"
style="display: block;border: none;outline: none;text-decoration: none;-ms-interpolation-mode: bicubic;">
You * * должны использовать абсолютные пути в электронной почте, в том числе протокола (HTTP : //, https: //) и имя домена. В противном случае, как клиент электронной почты узнает, где искать изображения? – 1sloc
Я пробовал с абсолютным адресом также с протоколом –
Ну, если '' не отображается в почтовом клиенте, он либо заблокирован почтовым клиентом, либо не существует на сервере. На самом деле, не так много других вариантов. – 1sloc