Les accents francophones et les mails

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

Stellvia
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Déc 28, 2004 0:02

Les accents francophones et les mails

Message le Ven Nov 30, 2007 15:46

Hello,

Voila j'ais quelques soucis avec les accents dans mes mails , ca dépend grandement des webmails , sur des un peu pourris style " laposte " , tout les accents dans les mails que j'envois avec php mail() sont remplacés par des ????

Je me demandais s'il y avais une solution pour que les accents passe mieux , y a pas un trucs a rajouter dans les header du mail par hasard ?


Bon sinon il reste la solution de virer tout les accents des mails et de préciser qu'ils ont été volontairement supprimés ... mais bon .


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Ven Nov 30, 2007 16:20

soit avec un mail HTML avec une ligne du type :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

soit avec un str_replace(array('é', 'è', ...), array('&eacute;', '&egrave;', ..., $tontexte)


Serious
WRInaute accro
WRInaute accro
 
Messages: 2438
Inscription: Lun Nov 21, 2005 18:29

Message le Ven Nov 30, 2007 16:32

quel mimetype utilises-tu?


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Ven Nov 30, 2007 16:40

j'utilise la fonction suivante :

Code: Tout sélectionner
define("EMAIL_MASTER", "moi@monsite.fr"); //Email de l'administrateur
define("EMAIL_MASTER_NAME", "Webmaster de mon site"); //Nom de l'administrateur

function send_mail($emailto, $sujet, $corps, $emailfrom, $priority=3) {
//envoi un email a un visiteur
   if(strtoupper(substr(PHP_OS,0,3)=='WIN')){
      $eol="\r\n";
      $sol="\n";
   }elseif(strtoupper(substr(PHP_OS,0,3)=='MAC')){
      $eol="\r";
   }else{
      $eol="\n";
   }
   if(!isset($sol)){
      $sol = $eol;
   }
   $Momentn = mktime().".".md5(rand(1000,9999));
   $bnd = md5(time()).rand(1000,9999);
   $bndp = md5(time()).rand(1000,9999);
   
   $Textmsg = eregi_replace("<br(.{0,2})>", $eol, $corps);
   $Textmsg = eregi_replace("</p>", $eol, $Textmsg);
   $Textmsg = strip_tags($Textmsg);
   if ($emailto == EMAIL_MASTER)
   //envoi du mail au webmaster
      $to = EMAIL_MASTER_NAME . "<" . EMAIL_MASTER . ">";
   else
      $to = "$emailto";
   if ($emailfrom == EMAIL_MASTER)
      $from = EMAIL_MASTER_NAME . "<" . EMAIL_MASTER . ">";
   else
      $from = "$emailfrom";
   $headers = 'From: '.$from.$eol;
   $headers .= 'Reply-To: '.$from.$eol;
   $headers .= 'Return-Path: '.$from.$eol;
   $headers .= 'X-Priority: '.$priority.$eol;
   $headers .= 'Message-ID: <'.$Momentn.'@PHPMAILSERVER>'.$eol;
   $headers .= 'Date: '.date("r").$eol;
   $headers .= 'Sender-IP: '.$_SERVER["REMOTE_ADDR"].$eol;
   $headers .= 'X-Mailer: PHP v'.phpversion().$eol; 
   $headers .= 'MIME-Version: 1.0'.$eol;
   $headers .= "Content-Type: multipart/mixed; $eol      boundary=\"".$bndp."\"".$eol.$eol;
   $msg  = "This is a multi-part message in MIME format.".$eol.$eol;
   $msg .= "--".$bndp.$eol;
   $msg .= "Content-Type: multipart/alternative; $eol      boundary=\"".$bnd."\"".$eol.$eol;
   $msg .= "--".$bnd.$eol;
   $msg .= "Content-Type: text/plain; charset=iso-8859-1".$eol;
   $msg .= "Content-Transfer-Encoding: 8bit".$eol.$eol;
   $msg .= $Textmsg.$eol;
   $msg .= "--".$bnd.$eol;
   $msg .= "Content-Type: text/html; charset=iso-8859-1".$eol;
   $msg .= "Content-Transfer-Encoding: 8-bit".$eol.$eol;
   $msg .= $corps.$eol;
   $msg .= "--".$bnd."--".$eol.$eol;
   $msg .= "--".$bndp."--";
   //envoi du mail
   return @mail($to, $sujet, $msg, $headers);
   //voici la ligne a utiliser pour les sites heberges chez Online.net pour l'envoi des mails
   //pour l'utiliser, il faut enlever les '//' devant les lignes ci-dessous et les mettre devant la ligne ci-dessus !
   //return @email("webmaster",$to,$sujet,$corps);
}

Stellvia
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Déc 28, 2004 0:02

Message le Ven Nov 30, 2007 16:59

Serious a écrit:quel mimetype utilises-tu?


Voici mes headers :

Code: Tout sélectionner
$headers .= "MIME-Version: 1.0\n";
$headers .= "X-Sender: <www.domaine.com>\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "X-auth-smtp-user: webmaster@domaine.com \n";
$headers .= "X-abuse-contact: abuse@domaine.com";


jeanluc
WRInaute accro
WRInaute accro
 
Messages: 2659
Inscription: Lun Mai 03, 2004 14:48

Message le Ven Nov 30, 2007 17:55

webmasterlamogere a écrit:soit avec un mail HTML avec une ligne du type :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

soit avec un str_replace(array('é', 'è', ...), array('&eacute;', '&egrave;', ..., $tontexte)
Il faut un mail HTML aussi pour ta deuxième proposition !

Jean-Luc


Serious
WRInaute accro
WRInaute accro
 
Messages: 2438
Inscription: Lun Nov 21, 2005 18:29

Message le Ven Nov 30, 2007 22:39

Stellvia a écrit:
Serious a écrit:quel mimetype utilises-tu?


Voici mes headers :

Code: Tout sélectionner
$headers .= "MIME-Version: 1.0\n";
$headers .= "X-Sender: <www.domaine.com>\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "X-auth-smtp-user: webmaster@domaine.com \n";
$headers .= "X-abuse-contact: abuse@domaine.com";


Tu n'as donc, a priori, pas de content-type defini: il faut l'ajouter. Evidement, il faut indiquer le bon jeu de caracteres, probablement iso-8859-1 mais ca peut etre autre chose aussi (utf-8, ...)
Content-Type: text/plain; charset=iso-8859-1

Stellvia
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Déc 28, 2004 0:02

Message le Sam Déc 15, 2007 0:12

Bonjour,

Désolé de répondre si en retard :(

J'ais rajouté :

$headers .= "Content-Type: text/plain; charset=iso-8859-1";

Aucun changement

j'ais essayé aussi avec l'utf8 :

$headers .= "Content-Type: text/plain; charset=utf-8";


J'ais toujours les accents qui déconne avec le webmail chez laposte.net

Si quelqu'un a une idée ?

lefou
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 122
Inscription: Mar Juin 07, 2005 14:10

Message le Sam Déc 15, 2007 12:28

webmasterlamogere a écrit:soit avec un mail HTML avec une ligne du type :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

soit avec un str_replace(array('é', 'è', ...), array('&eacute;', '&egrave;', ..., $tontexte)


Pourquoi utiliser str_replace alors que la fonction htmlentities de php existe ????

Stellvia
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Déc 28, 2004 0:02

Message le Mar Déc 18, 2007 18:19

Salut

Je fais un p'tit up a ce post car j'ais toujours des bug avec les accents et le webmail laposte ( surement d'autre mais bon je les connais pas tous )

C'est chiant :/ Si quelqu'un a une solution je lui ferais un gros bisous sur la fesse gauche looooool


webmasterlamogere
WRInaute accro
WRInaute accro
 
Messages: 1874
Inscription: Dim Déc 17, 2006 21:08

Message le Mar Déc 18, 2007 18:46

c'est peut-être que le webmail de la poste qui ne marche pas. As-tu essayé de lire le mail avec outlook et le serveur POP de la poste? Sinon essaye de les contacter directement.

Stellvia
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Déc 28, 2004 0:02

Message le Ven Déc 21, 2007 23:23

Contacter laposte ?
Nan mais ils répondront jamais ... :/

Nan je pense qu'il y a un soucis avec mes headers , enfin .... je supose ... si je savais ca serais corrigé ;)


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités