[RESOLU] Accents dans affichage mail extrait fichier txt

Eléphanteau du PHP | 11 Messages

28 juin 2013, 14:22

bonjour,
c'est mon premier pst car j'ai testé des dizaines de post sur ce sujet et rien ne solutionne mon problème :
j'envoie par email le contenu d'un fichier txt (et j'envoie le fichier en pièce jointe.
sur le fichier texte, les accents sont bien présents, mais sur l'extraction dans le sujet du mail ils ne sont pas en utf8

mon code PHP :
/envoi de mail avec fichier texte joint *****************debut
		$mime_boundary = "<<<--==+X[".md5(time())."]";

		$headers .= "From: toto le Site <[email protected]>\r\n";
		$headers .= "To: toto <[email protected]>\r\n";
		$headers .= "MIME-Version: 1.0\r\n";
		$headers .= "Content-Type: multipart/mixed;\r\n";
		$headers .= " boundary=\"".$mime_boundary."\"";

		$message .= "Message principal du mail.\r\n";
		$message .= "\r\n";
		$message .= "--".$mime_boundary."\r\n";
		$message .= "Content-Type: text/plain; charset=\"utf-8\"\r\n";
		$message .= "Content-Transfer-Encoding: 7bit\r\n";
		$message .= "\r\n";
		$message .= "Bonjour \r\n";
		$message .= "Voici le fichier demandé! \r\n";
		$message .= "--".$mime_boundary."\r\n";
		$message .= "Content-Type: text/plain;\r\n";
		$message .= " name=\"adressesip.txt\"\r\n";
		$message .= "Content-Transfer-Encoding: base64\r\n";
		$message .= "Content-Disposition: attachment;\r\n";
		$message .= " filename=\"adressesip.txt\"\r\n";
		$message .= "\r\n";

		$myfile = file_get_contents("adressesip.txt");
		$fileContent = chunk_split( base64_encode($myfile) );

		$message .= $fileContent;
		$message .= "\r\n";
		$message .= "--".$mime_boundary."\r\n";
		//$message = utf8_decode($message);
		$ok = mail('[email protected]', 'listing des visites', $message, $headers);

		//if ($ok) echo "Parfait"; else echo "AIEEEEUH";
***************************************************************
et ce que je recois dans le corps du mail :
=============================================
Bonjour
Voici le fichier demandé! (ici l'accent est bon !)


adressesip.txt

{ 66.000.000.00|| 25-06-2013 || 04h28}californie

{ moi même|| 25-06-2013 || 21h14} (ici c'est extrait du fichier .txt et l'accent 'nest pas bon !)
************************************************************
quelqu'un peut-il e dire ou ca bug et comment modifier mon code
merci à vous
Cordialement
Alain
*******************************************************************

Mammouth du PHP | 619 Messages

28 juin 2013, 17:27

Bonjour,

tente d'encoder ton file get
$myfile = utf8_decode(file_get_contents("adressesip.txt"));
ou
$myfile = utf8_encode(file_get_contents("adressesip.txt"));

Eléphanteau du PHP | 11 Messages

03 juil. 2013, 18:52

merci beaucoup Ghost 5922.
ta première proposition :
$myfile = utf8_decode(file_get_contents("adressesip.txt"));
marche parfaitement et résout mon problème,
merci beaucoup
Amicalement