Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Funckja mail, polskie serwisy i kodowanie utf8
Forum PHP.pl > Forum > PHP
omeck
Witam,
napisałem serwis pod kodowanie utf8 i przy wysyłaniu maili zauważyłem, że nie zawsze dobrze koduje maile wysyłane w formacie html. Ze sprawdzanych 3 serwisów pocztowych - gmail.com, wp.pl i o2.pl problem dotyczy tylko o2

fragment kodu:

  1. <?php
  2. public function sendMail($email, $subject, $content, $replyTo=null)
  3. {
  4. $head="From: mailer@costam.pl";
  5. if(!is_null($replyTo)) $head.="Reply-to: $replyTo";
  6. $head.="MIME-Version: 1.0";
  7. $head.="Content-Type: text/html; charset=utf8";
  8. $footer='<br /><br />stopka';
  9.  
  10. $content=$content.$footer;
  11.  
  12. mail($email, $subject, $content, $head);
  13. }
  14. ?>


zauważyłem, że Allegro też ma kodowanie utf8 i maile które trafiają na o2 nie mają problemów z kodowaniem - nie ma w nich krzaczków winksmiley.jpg

sorki, że piszę odpowiedź na własnego posta, ale może komuś się to przyda smile.gif

cały problem polegał na tym, że miałem skrypt zakodowany w uft8, mail był w iso, ale jego treść w utf.

Rozwiązanie problemu:
  1. <?php
  2. public function sendMail($email, $subject, $content, $replyTo=null)
  3. {
  4. $header="From: mailer@aders.plrn";
  5. if(!is_null($replyTo)) $header.="Reply-to: $replyTorn";
  6. $header.="Mime-Version: 1.0rn";
  7. $header.="Content-type: text/html; charset=ISO-8859-2rn";
  8.  $header.="Content-Transfer-Encoding: 8bitrn";
  9.  
  10. $subject=iconv("UTF-8","ISO-8859-2", $subject);
  11. $subject='=?iso-8859-2?B?'.base64_encode($subject).'?=';
  12.  
  13. $footer='stopka';
  14. $content=iconv("UTF-8","ISO-8859-2", $content.$footer);
  15.  
  16. mail($email, $subject, $content, $header);
  17. }
  18. ?>
Inspektor Sowa
Ja to zrobiłem tak: zamiast nagłówka

Kod
$head.="Content-Type: text/html; charset=utf8";


dałem

Kod
$head.="Content-Type: text/plain; charset=UTF-8";


Co prawda wysyłam jako text/plan (nie potrzebuję HTML), ale przynajmniej działa.

pozdrawiam
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.