Forum général.général Encodage d'un mail

Posté par .
Tags : aucun
0
7
oct.
2004
Salut,

Je suis chargé d'administrer un forum PHP (Invision) dont un des fichiers de conf a cette allure :

$INFO ['board_name'] = 'Forum des activités'

Cette chaîne est utilisée un peu partout, mais également dans le mail envoyé lorsque que quelqu'un s'inscrit (dans les champs Subject et From), ce qui fait hautement râler le serveur de mails :

INVALID HEADER (INVALID CHARACTERS OR SPACE GAP)

Non-encoded 8-bit data (char E9 hex) in message header 'From'
From: "Forum des activit\351...


Quelqu'un voit-il une solution (à part changer le template des mails) ?
Merci d'avance
Franck
  • # RFC1522

    Posté par . Évalué à 2.

    T'as pas le droit d'écrire des caractères non us-ascii directement dans les headers comme ça. Faut les encoder. La RFC dit :
    encoded-word = "=?" charset "?" encoding "?" encoded-text "?="
    Où l'encoding peut être du base 64 ou du quoted printable.
    Mais j'imagine qu'il existe des fonctions PHP toutes faites pour ça.
    • [^] # Re: RFC1522

      Posté par . Évalué à 3.

      j'imagine qu'il existe des fonctions PHP toutes faites pour ça

      Exactement, tout du moins pour le base64 :

      http://fr.php.net/base64-encode(...)
      • [^] # Re: RFC1522

        Posté par (page perso) . Évalué à 2.

        cependant le quoted-printable a l'avantage d'etre plus "lisible" par un humain que le base64.
        • [^] # Re: RFC1522

          Posté par . Évalué à 2.

          En plus quoted-printable prend moins de place. Base 64 est surtout fait pour les données non-textuelles.
      • [^] # Re: RFC1522

        Posté par . Évalué à 2.

        En fait je pensais à un truc tout fait, style "header-encode()", qui rajouterais les "=?" avec les bons arguments, qui laisserait le texte tel quel si il n'y a que de l'ascii, etc.
  • # & #233;

    Posté par . Évalué à 1.

    Merci pour vos réponses : mais je viens de réaliser : si je mets dans ma conf :

    $INFO ['board_name'] = 'Forum des activit& #233;s'

    Cela posera-t-il un problème au serveur de mail ? C'est un caractère ASCII non ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.