Outils pour utilisateurs

Outils du site


php:mail

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
Dernière révisionLes deux révisions suivantes
php:mail [17/10/2012 00:59] – créée danielphp:mail [17/10/2012 01:14] daniel
Ligne 1: Ligne 1:
 ====== Envoi de mail ====== ====== Envoi de mail ======
 +
 +===== Pb et pistes =====
  
 Envoyer un mail en texte brut en php semble simple, pourtant après pas mal de recherches et de creusage de méninges je n'ai pas réussi à trouver de système passe partout. Envoyer un mail en texte brut en php semble simple, pourtant après pas mal de recherches et de creusage de méninges je n'ai pas réussi à trouver de système passe partout.
Ligne 18: Ligne 20:
 La classe ci-dessous marche, sauf avec les sujets avec accents si on utilise windows mail sur un serveur qmail (free.fr par exemple). La classe ci-dessous marche, sauf avec les sujets avec accents si on utilise windows mail sur un serveur qmail (free.fr par exemple).
  
 +
 +
 +===== Exemple de solution (partielle) =====
 <code php> <code php>
-<?php 
 /** /**
  * Une classe pour envoyer des mails en texte brut correctement encodés (avec accents   * Une classe pour envoyer des mails en texte brut correctement encodés (avec accents 
Ligne 27: Ligne 31:
    
  * marche pas si on cumule sujets avec accents, windows mail et adresse @free.fr.  * marche pas si on cumule sujets avec accents, windows mail et adresse @free.fr.
 + * Code sous licence GPL
 + * @author daniel.caillibaud@sesamath.net
  */  */
  
Ligne 309: Ligne 315:
     return mail($this->to, $this->subject, $this->message, $this->getHeaders());     return mail($this->to, $this->subject, $this->message, $this->getHeaders());
   } // send   } // send
-   
- 
      
   /**   /**
Ligne 459: Ligne 463:
  
 } }
-<code>+</code> 
 + 
 +===== Exemples ===== 
 +<code php> 
 +print(mb_encode_mimeheader("un truc évident mais pénible à la longue","UTF-8","Q"));' 
 +=> 
 +un truc =?UTF-8?Q?=C3=83=C2=A9vident=20mais=20p=C3=83=C2=A9nible=20=C3=83?
 + =?UTF-8?Q?=C2=A0=20la=20longue?
 + 
 +print(iconv_mime_encode("From", "un truc évident mais pénible à la longue", 
 +   array("scheme" => "Q", "input-charset" => "UTF-8", "output-charset" => "UTF-8"))); 
 +=> 
 +From: =?UTF-8?Q?un=20truc=20=C3=A9vident=20ma?==?UTF-8?Q?is=20p?
 + =?UTF-8?Q?=C3=A9nible=20=C3=A0=20la=20longue?
 + 
 +print(quoted_printable_encode("From: un truc évident mais pénible à la longue")); 
 +=> 
 +From: un truc =C3=A9vident mais p=C3=A9nible =C3=A0 la longue 
 +</code> 
 + 
 +Et ensuite, y'a deux écoles 
 +  un truc =?UTF-8?Q?=C3=A9vident?
 +ou 
 +  ?UTF-8?Q?un=20truc=20=C3=A9vident?
 + 
 +Tous les mailers observés utilisent le 1er pour le sujet (idem mb_encode_mimeheader) et le 2e (comme iconv_mime_encode) pour les adresses comme 
 +  From: ?ISO-8859-1?Q?un=20truc=20=E9vident?= <uneadresse@example.com> 
 + 
php/mail.txt · Dernière modification : 17/10/2012 01:14 de daniel