Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Newsletter +phpmailer
Forum PHP.pl > Forum > PHP
Hpsi
Witam.
Wiem iż ten temat był powielany wiele razy ale nie znalazłem rozwiązania do mojego problemu.
Wysyłam e-maila wszystko jest ok (na gmailu widzi bez krzaków) natomiast na innych kontach widzi krzaki, mam wrzucone kodowanie polskie
  1. <?php
  2.  
  3. $mail->charset = 'ISO-8859-2';
  4. $mail->ContentType = 'text/plain';
  5. $mail->Encoding = 'base64';
  6.  
  7. ?>

Ale niestety nie działa to jak powinno, w wiadomości są krzaki w temacie to samo, zmiana kodowania niestety nic nie dała.


Kolejne moje pytanie bo mam problem, wrzucam sobie szablon newslettera w htmlu, i mam tam tła wrzucone przez style np style="background-image:url..." i żadna skrzynka tego nie widzi , niestety nie jestem w stanie jednej cześci szablonu zrobić jako obrazek i powstaje mi tam jedna wielka "czarna" plama.

Proszę o pomoc, z góry dziękuje smile.gif
vokiel
Jakie kodowanie skryptu, plików? Ustaw wszystko w tym samym. Używam phpMailera z utf-8 i nie mam problemów, wysyłam maile po polsku, rosyjsku i wszędzie widzi tak jak trzeba.

Aby obrazki były widoczne w treści masz 2 możliwości:
1. Podlinkowanie ich do Twojego serwera
  1. background: url("http://TwojSerwer.pl/img/blabla.jpg")

2. Zintegrowanie ich z wiadomością
  1. $mail->AddEmbeddedImage($path,'nazwa')
i użycie w kodzie
  1. <img src="cid:nazwa" />
Hpsi
I tutaj zaczynają się klocki.
Obrazki są wrzucone na moim serwerze i jest pełna ścieżka do nich dokładnie tak jak podałeś
  1. background: url("http://TwojSerwer.pl/img/blabla.jpg")


Co do kodowania, jest wrzucone na stronie ISO-8859-2 i to samo w e-mailu.

Ogólnie cała obsługa mailera jest w ten sposób robiona
  1. <?php
  2. require_once('libraries/class.phpmailer.php');
  3. $mail = new PHPMailer(true); // the true param means it will throw exceptions on errors, which we need to catch
  4. $mail->IsSMTP(); // telling the class to use SMTP
  5.  
  6. $mail->Host = "xxxx"; // SMTP server
  7. $mail->SMTPDebug = 2; // enables SMTP debug information (for testing)
  8. $mail->SMTPAuth = false; // enable SMTP authentication
  9. $mail->Host = "xxxx"; // sets the SMTP server
  10. $mail->Port = 25; // set the SMTP port for the GMAIL server
  11. $mail->Username = "xxxxx"; // SMTP account username
  12. $mail->Password = "xxxx "; // SMTP account password
  13.  
  14. $mail->charset = 'ISO-8859-2';
  15. $mail->ContentType = 'text/plain';
  16. $mail->Encoding = 'base64';
  17. #$mail->from = 'xxx';
  18. $mail->fromName = 'xxx';
  19. $mail->SetFrom('xxx', 'xxx');
  20. if($_SESSION['szablon']['dzial'] == 'g')
  21. {
  22. $mail->AddAddress('xxx', 'yyy');
  23. $mail->AddReplyTo('xxx', 'yyy');
  24. }elseif($_SESSION['szablon']['dzial'] == 0)
  25. {
  26. $re = $this->engine->db->queryf('SELECT `email` FROM `%t` WHERE `id`>%u AND `id`<%u', 'newsletter', $od, $do);
  27. while($r = $re->fetch())
  28. {
  29. # $mail->AddAddress($r['email'], $r['email']);
  30. }
  31. }
  32. else
  33. {
  34. $re = $this->engine->db->queryf('SELECT `email` FROM `%t` WHERE `id`>%u AND `id`<%u', 'newsletter', $od, $do);
  35. while($r = $re->fetch())
  36. {
  37. # $mail->AddAddress($r['email'], $r['email']);
  38. }
  39. }
  40. $wiadomosc .= '<html>
  41. <head>
  42. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  43. </head>
  44. <body>';
  45.  
  46. $wiadomosc .= $_SESSION['szablon']['title'];
  47. $wiadomosc .= '</body></html>';
  48. $mail->Subject = $_SESSION['szablon']['title'];
  49. $mail->MsgHTML($wiadomosc );
  50. $mail->Send(); ?>
vokiel
Linkowanie do grafik z zewnętrznego serwera zwykle jest zablokowane, pojawia się możliwość zezwolenia na pobranie. Dlatego od razu ich nie widać.

IMHO nie trzeba dawać w treści html, head itd,

A pokaż źródło wiadomości jaka przychodzi na maila
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.