IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Envoi de mail en HTML via php certain des caractères s'affiche comme ceci Ã,ª, ©.


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut Envoi de mail en HTML via php certain des caractères s'affiche comme ceci Ã,ª, ©.
    Bonsoir,

    Pour mon site j'utilise l'envoie de mail en HTML via php, mais je ne comprend pas pourquoi certain des caracteres s'affiche comme ceci Ã,ª, ©.

    Comment puis je faire pour y remèdier ?
    Merci, cordialement.

    Caractère du mail
    Aujourd'hui le 27, c'est la Saint Nathalie. Si vous recevez ce message c'est que vous êtes abonné a l'email d'avertisement de la fêtes des saints.
    Pour vous désabonné envoyer un mail à perso@perso.fr en indiquant votre mail avec d'inscript désabonnement avertisement de la fêtes des saints
    Tout le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $destinataire = "site@site.fr"; 
    $titre = "Fetes des Saint"; 
    message !</font><br><img src="votre_image.jpg" border="0"> 
    //</body></html>'; 
    $message = "<html><body>Bonjour,<br /><br /> Aujourd'hui le <strong> $jour_en_cours,</strong> c'est <strong> ". $prenoms ." </strong><br />\n 
    Si vous recevez ce message c'est que vous êtes abonné a l'email d'avertisement de la fêtes des saints.<br />\n Pour vous désabonné envoyer un mail à <a href='mailto:perso@perso.fr'>perso@perso.fr</a> en indiquant votre mail avec d'inscript désabonnement avertisement de la fêtes des saints<br />
    <img src='email_fetes_des_saints.jpg' border='0'>
    </body></html>"; 
     
    $entetedate .= date("D, j M Y H:i:s -0600"); 
    $entetemail .= "MIME-version: 1.0\n"; 
    $entetemail .= "Content-type: text/html; charset=iso-8859-1\n"; 
    $entetemail .= "Date: $entetedate"; 
    mail($destinataire, $titre, $message, $entetemail);
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 104
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 104
    Points : 8 222
    Points
    8 222
    Billets dans le blog
    17
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $entetemail .= "Content-type: text/html; charset=iso-8859-1\n";
    Ton script est sûrement écrit en UTF-8, et comme ton email est lu en ISO-8859-1 : ça coince.

    PS : il faut séparer les en-têtes de mail avec \r\n et non seulement \n
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 412
    Points : 79
    Points
    79
    Par défaut
    Bonsoir,

    Quand vous dite il faut séparer les entêtes je pense qu'il s'agit de cela.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $entetedate .= date("D, j M Y H:i:s -0600"); 
    $entetemail .= "MIME-version: 1.0\n"; 
    $entetemail .= "Content-type: text/html; charset=iso-8859-1\n"; 
    $entetemail .= "Date: $entetedate";
    J'ai donc comme ceci et ca ne fonctionne pas avec \r\n a la fin.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $entetedate .= date("D, j M Y H:i:s -0600 \r\n"); 
    $entetemail .= "MIME-version: 1.0 \r\n"; 
    $entetemail .= "Content-type: text/html; charset=iso-8859-1 \r\n"; 
    $entetemail .= "Date: $entetedate \r\n";
    Merci.
    Intel I7 960 | 6 Go Ram | 5 HDD au total 3636 Go | Windows 7 Edition intégral x64 | WampServer 2.0c | Apache 2.2.8 | Php 5.2.6 | MySQL 5.0.51b
    DreamPlug | 512 mo ram | SSD 16 GO | Linux debian 2.6.39.4 | armv5tel | Lamp | PHP 5.3.3-7 | Apache 2.2.16 | Mysql 14.14

Discussions similaires

  1. envoi mail en html via formulaire php
    Par flambyture dans le forum Langage
    Réponses: 5
    Dernier message: 27/03/2008, 10h43
  2. Envoi de mail par Access via Outlook
    Par SpiderKarim dans le forum Access
    Réponses: 5
    Dernier message: 27/09/2006, 16h21
  3. [VBS & CDO] Envois de mail format HTML
    Par nonotoubo dans le forum VBScript
    Réponses: 2
    Dernier message: 23/08/2006, 16h34
  4. Automation Mail en HTML Via OUTLOOK EXPRESS
    Par Stéphane Olivier BERNARD dans le forum Access
    Réponses: 1
    Dernier message: 01/11/2005, 09h01
  5. Transformation xml + xsl -> HTML via PHP
    Par petit-ourson dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 19/10/2003, 22h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo