bonjour à tous,
Je viens vers vous concernant l'envoi de mail avec php.
Je sais qu'il y a plein de sujet à ce sujet , mais je n'arrive pas à trouver les réponses à mes questions.
J'utilise le script suivant :
Problème ou question numéro 1 :
Comme on peut le voir au début du code, on filtre les serveurs qui posent des problème et on change la variable $passage_ligne.
Dans mon message texte, je voulais me servir de cette valeur pour changer de ligne.
Si j'envoi le mail sur mon adresse "msn.com", sur mon iphone, cela indique "message vide", alors que le même mail lu sur outlook sur Pc, me fait bien apparaître le message avec les sauts de ligne.
Que ce passe-t-il?
Problème ou Question numéro 2 :
Lorsque j'envoi mon mail sur mon adresse "laposte.net", le sujet du message affiche bien le "é" sur outlook sur PC, mais affiche un "è" sur le portail l'aposte.net.
Par contre, dans les deux cas, les accents du message s'affichent correctement.
Aie ???
Je ne suis que sur le message au format txt pour le moment, comme vous le verrez, j'ai mis en commentaires la partie html du script.
Question subsidiaire :
Est-ce que ce script est toujours d'actualité ?
Je voudrais bien que le mail de réinitialisation du mot de passe soit accessible et lisible par tout le monde, si vous voyez ce que je veux dire
Par avance, je vous remercie de votre aide.
Modifié par Alexbass (05 Jan 2015 - 20:28)
Je viens vers vous concernant l'envoi de mail avec php.
Je sais qu'il y a plein de sujet à ce sujet , mais je n'arrive pas à trouver les réponses à mes questions.
J'utilise le script suivant :
//Envoi mail au client:
if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $email2)) // On filtre les serveurs qui rencontrent des bogues.
{ $passage_ligne = "\r\n"; } else { $passage_ligne = "\n"; }
//=====Déclaration des messages au format texte et au format HTML.
$message_txt = 'Veuillez trouver ci-après vos paramètres de connexion au site : ' . $passage_ligne . 'Email : ' . $emailmdp . ' ' . $passage_ligne . 'Mot de passe : ' . $mdp_genere . ' '. $passage_ligne . 'Merci';
$message_html = '<html><head>
<title>ici le titre</title>
<style type="text/css">ici le style</style>
</head>
<body><p>ici le mail</body>
</html>';
//==========
//=====Création de la boundary
$boundary = "-----=".md5(rand());
//==========
//=====Définition du sujet.
$sujet = "Le sujet du message comporte un é";
//=========
//=====Création du header de l'e-mail.
$header = "From: \"le nom\"<noreply@lenom.fr>".$passage_ligne;
$header.= "Reply-to: \"lenom\" <noreply@lenom.fr>".$passage_ligne;
$header.= "MIME-Version: 1.0".$passage_ligne;
$header .= "X-Priority: 3".$passage_ligne;
$header.= "Content-Type: multipart/alternative;".$passage_ligne." boundary=\"$boundary\"".$passage_ligne;
//==========
//=====Création du message.
$message = $passage_ligne."--".$boundary.$passage_ligne;
//=====Ajout du message au format texte.
$message.= "Content-Type: text/plain; charset=\"UTF-8\"".$passage_ligne;
$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$message.= $passage_ligne.$message_txt.$passage_ligne;
//==========
$message.= $passage_ligne."--".$boundary.$passage_ligne;
//=====Ajout du message au format HTML
//$message.= "Content-Type: text/html; charset=\"UTF-8\"".$passage_ligne;
//$message.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
//$message.= $passage_ligne.$message_html.$passage_ligne;
//==========
//$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
//$message.= $passage_ligne."--".$boundary."--".$passage_ligne;
//==========
//=====Envoi de l'e-mail.
if(mail($email2,$sujet,$message,$header)) { } else { echo "Echec lors de l'envoi du message, veuillez recommencer.";}
Problème ou question numéro 1 :
Comme on peut le voir au début du code, on filtre les serveurs qui posent des problème et on change la variable $passage_ligne.
Dans mon message texte, je voulais me servir de cette valeur pour changer de ligne.
Si j'envoi le mail sur mon adresse "msn.com", sur mon iphone, cela indique "message vide", alors que le même mail lu sur outlook sur Pc, me fait bien apparaître le message avec les sauts de ligne.
Que ce passe-t-il?
Problème ou Question numéro 2 :
Lorsque j'envoi mon mail sur mon adresse "laposte.net", le sujet du message affiche bien le "é" sur outlook sur PC, mais affiche un "è" sur le portail l'aposte.net.
Par contre, dans les deux cas, les accents du message s'affichent correctement.
Aie ???
Je ne suis que sur le message au format txt pour le moment, comme vous le verrez, j'ai mis en commentaires la partie html du script.
Question subsidiaire :
Est-ce que ce script est toujours d'actualité ?
Je voudrais bien que le mail de réinitialisation du mot de passe soit accessible et lisible par tout le monde, si vous voyez ce que je veux dire
Par avance, je vous remercie de votre aide.
Modifié par Alexbass (05 Jan 2015 - 20:28)