Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Swift Mailer - wysłanie wiadomości z czystym tekstem
athabus
post 24.01.2011, 18:20:46
Post #1





Grupa: Zarejestrowani
Postów: 898
Pomógł: 48
Dołączył: 2.11.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam,

walczę z wysyłką wiadomości zawierającej tylko czysty tekst. Chciałbym uzyskać linię o długości 30znaków w mailu.
Oto mój kod:
  1. $mailing=MailingPeer::retrieveByPK($r->getParameter('id'));
  2.  
  3. $message=Swift_Message::newInstance();
  4. $message
  5. ->setFrom(array($mailing->getSenderAddress()=>$mailing->getSenderName()))
  6. ->setTo(sfConfig::get('app_test_mail'))
  7. ->setSubject($mailing->getSubject())
  8. ->setMaxLineLength(30)
  9. ->setBody($this->getPartial('message_body', array('mediaType'=>'mail', 'message'=>$message, 'mailing'=>$mailing) ), $mailing->getContentType());
  10.  
  11. $this->getMailer()->send($message);


Ogólnie bazując na manualu ustawiam typ wiadomości (przechowuję go w $mailing->getContentType())
- jeśli ustawię na "text/plain" to wszystko ładnie się wysyła, ale wiersze nie mają ograniczonej długości. Ciągną się do końca ekranu jak w wiadomościach text/html
- jeśli ustawię "text" to linie ładnie zawijają się po 30 znakach, ale zamiast polskich literek pojawiają się problemy -> np. słowo dokonaliśmy jest zamieniane na dokonal=
i=C5=9Bmy

Macie może pomysł jak obejść ten problem?

//EDIT

Już znalazłem odpowiedź w źródłach innych wiadomości
Należy jeszcze dodać do kodu powyżej:
  1. ->setEncoder(new Swift_Mime_ContentEncoder_PlainContentEncoder("8bit"))


Ten post edytował athabus 24.01.2011, 18:35:40
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 17:08