PHPMailer ile e-posta gönder - görüntüyü gövdeye yerleştir


97

PHPMailer ile resimlerle HTML postası göndermeye çalışıyorum. Gövde, tüm bilgileri içeren bir html dosyasından yüklenir.

Postayı gönderirken, resmi ek olarak da göndermeme rağmen, resim vücutta görünmüyor.

HTML <img>etiketi, yerle aynı yere işaret eder.

PHP:

$mail->AddAttachment('img/2u_cs_mini.jpg');

Resmin gövdeye yüklenebilmesi için html'nin eke işaret etmesini nasıl sağlayabilirim?

PHPMailer ile gelen örneğe baktığımda herhangi bir fark görmüyorum ve onların durumunda görüntü beliriyor.

Yanıtlar:


208

Cevabı buldum:

$mail->AddEmbeddedImage('img/2u_cs_mini.jpg', 'logo_2u');

ve <img>etikete koysrc='cid:logo_2u'


3
Bu çok yardımcı oluyor !!! Merak ettiğim için bunu nerede buldun? Lütfen açıkla.
mtk

Neden cid sonundaki ters eğik çizgi?
Plummer

Bunu çok uzun zaman önce yaptım, bir sebebi var mı hatırlamıyorum. Olduğunu sanmıyorum. Muhtemelen biraz çöp.
elvispt

8
Ters eğik çizginin, tırnak işaretlerinden kaçan önceki bir koddan yanlışlıkla orada bırakıldığına echo "src=\"cid:logo_2u\""inanıyorum ve ters eğik çizginin gerekli olduğuna inanmıyorum.
Cruel

9
Uzman olmayan birinin açıklamasına ihtiyaç duyanlar için: Görüntü oluşturma motoruna görüntünün nereden ve hangi protokolle alınacağını söylemeniz gerekir (ekli bir görüntüyü kullanmak için de cid protokolü, Content-ID kullanırsınız). AddEmbeddedImage eke başvurabilmeniz için bir kimlik verir (Sesler ve diğer dosya türleri olabileceğini unutmayın).
PhoneixS

3

PHPMailer Kılavuzuna göre , tam cevap şu şekilde olacaktır:

$mail->AddEmbeddedImage(filename, cid, name);
//Example
$mail->AddEmbeddedImage('my-photo.jpg', 'my-photo', 'my-photo.jpg '); 

Kullanım Örneği:

$mail->AddEmbeddedImage("rocks.png", "my-attach", "rocks.png");
$mail->Body = 'Embedded Image: <img alt="PHPMailer" src="cid:my-attach"> Here is an image!';

Uzak URL ile bir resim görüntülemek istiyorsanız:

$mail->addStringAttachment(file_get_contents("url"), "filename");
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.