Apostrophe dans mail avec php

Fermé
creastic Messages postés 9 Date d'inscription lundi 12 juillet 2010 Statut Membre Dernière intervention 19 avril 2012 - 10 mai 2011 à 16:36
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 10 mai 2011 à 17:26
Bonjour,

Je souhaite envoyer un mail via un formulaire, j'y arrive bien sauf que quand le sujet du message ou le nom de l'expediteur contient un apostrophe il me met \' .
Je suis en utf-8
Voici le code du header actuelement :

$name = "=?UTF-8?B?".base64_encode($name)."?=";

	$headers = "From: \"$name\"<$email>\n";
	$headers .= "Reply-To: $email\n";
	$headers .= "Bcc: monmail@gmail.com\n";


$headers .= "MIME-Version: 1.0\n";
	$headers .= "Content-Type: text/plain; charset=UTF-8; format=flowed \r\n";
	$headers .= "Content-Disposition: inline \r\n";
	$headers .=  "Content-Transfer-Encoding: 8bit \r\n";
$subject = "=?UTF-8?B?".base64_encode($subject)."?=";
@mail($to, $subject, $body, $headers)

A voir également:

1 réponse

Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
10 mai 2011 à 17:26
Bonjour,

Si tu es en UTF-8, je ne peux que te conseiller d'utiliser le vrai caractère pour les apostrophes, et non celui qui se trouve sous le chiffre 4...
On peut le composer en faisant ALT + 0146 sous windows.

Donc une simple fonction str_replace pourra faire l'affaire.

Xavier
0