,
J'ai un petit problème avec la fonction mail() de php et je ne suis pas un pro dans le développement web. En fait, j'essaie d'envoyer tout simplement un mail au format HTML à partir d'un petit script qui marche bien, mais lorsque je veux mettre un nom complet dans l'en-tête "From" cela ne passe plus. Voici le code que j'utilise :
Si je mets juste "nom.prenom@serveur.com" au lieu du nom complet ça passe mais autrement non, je reçois l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 // Définition de l'en-tête du message $mailHeader = "From: \"Nom Prenom\" <nom.prenom@serveur.com>\r\n"; $mailHeader.= "MIME-Version: 1.0\r\n"; $mailHeader.= "Content-type: text/html; charset=iso-8859-1\r\n"; if(!mail($data['email'], 'Newsletter'.$title, ParseBbCode($content), $mailHeader)) $errorMails[] = $data['email'];
J'ai donc analysé la trame et voici ce qui est effectivement envoyé sur le serveurEnvoyé par PHP
Ce qui est faux, on voit que le serveur php a rajouté des < > en trop.
Code X : Sélectionner tout - Visualiser dans une fenêtre à part MAIL FROM: <"Nom Prenom" <nom.prenom@serveur.com>>\r\n
Question : est-ce qu'il y a une option qui gère cela ou sinon d'où vient cette erreur ? Je n'ai rien trouvé de convaincant à ce sujet .
d'avance
Partager