Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: E-mail jako html i txt
Forum PHP.pl > Forum > PHP
voytass
Witam,


pytanko: Jak nalezy sformatowac ponizszy kod aby mail byl wyslany w dwoch postaciach: html i txt.

  1. <?php
  2.  
  3. ################################################################################
    ########################
  4. function mailaktyw($mail,$kod,$iduzk, $aktywny = 0) {
  5. ################################################################################
    ########################
  6. global $adres, $wwwname, $infomail, $mailstopkainfo;
  7. include( "pear/Mail.php" );
  8. $uzknowy = Dane_uzytkownika_po_ID($iduzk);
  9.  
  10. $recipients = $mail ;
  11.  
  12. $headers [ "Content-Type" ]  = "text/html; charset=\"iso-8859-2\"" ;
  13. $headers [ "Content-Transfer-Encoding" ]  = "8bit";
  14. $headers [ "Mime-Version" ] = "1.0"; 
  15. $headers [ "From" ] = $infomail;
  16. $headers [ "To" ] = "$uzknowy->uzk_imie $uzknowy->uzk_nazwisko <$mail>" ;
  17. $headers [ "Subject" ]  = "Witamy w serwisie - Aktywacja konta" ;
  18.  
  19. $body = "<p>Witaj $uzknowy->uzk_imie,</p>\n"
  20. . "<p>W celu zwiŕkszenia bezpiecze˝stwa rejestracja konta w serwisie $wwwname wymag
    a Twojej akceptacji.</p>"
  21. . "<p>Aby uaktywniŠ konto kliknij w poni┐szy odnoÂnik:<br/>\n"
  22. . "<a href=\"$adres/index.php?page=start3&amp;op=aktywujkonto&amp;kod=$kod&amp;id=$iduzk\" target=\"_blank\">$adres/index.php?page=start3&amp;op=aktywujkonto&amp;kod=$kod&amp;id=$iduzk</a></p>"
  23. . "<p>JeÂli nie oczekiwa│e powy┐szej wiadomoÂci zignoruj jej zawartoŠ.</p>"
  24. . "<p>Zespˇ│ $wwwname</p>\n"
  25. . "<p><div style=\"font-size: 80%\">List wygenerowany automatycznie</div></p>\n"
  26. . "<p style=\"border-top:1px solid silver; margin-top:50px; color:silver; font-size:80%\">$mailstopkainfo</p>\n";
  27.  
  28. $params["sendmail_path"] = "/usr/bin/sendmail";
  29. // Create the mail object using the Mail::factory method
  30. $mail_object =& Mail :: factory ( "sendmail" , $params );
  31. if ($aktywny){
  32. $wysylka = $mail_object -> send ( $recipients , $headers , $body );
  33. }
  34. if ($wysylka) {
  35. return $body;
  36. } else {
  37. return false;
  38. }
  39. } // end function
  40.  
  41. ?>


dlaczego pytam: niektorzy uzytkownicy nie wysweitlaja maila jakot html tylko jako txt. Gdy jest wyswietlany jako txt ampersandy sa w postaci '&amp;' co oczywiscie jest bledem i nie jest walsciwie uruchamiana strona wskazana w odnosniku.

jak sie to rozwiazuje? czy pisze sie taka sama tresc dla TXT jaka jest w HTML?

pozdrawiam,
Wojtek
a79rtur
nie wiem jak jest w tej Twojej klasie z PEARa , ale w PHPMailer jest metoda AltBody (alternetywna tresc) i z jej pomocą daje sie tresc txt.
TUTAJ jest przykład.
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.