Comment mettre son mail php en utf-8 ?

Fermé
wyzdown Messages postés 2 Date d'inscription vendredi 27 mai 2016 Statut Membre Dernière intervention 27 mai 2016 - 27 mai 2016 à 10:36
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 - 27 mai 2016 à 15:49
Bonjour,
sur ma page web php j'ai un script pour envoyer les mails mais le problemes c'est qu'il ne les envoie pas en utf-8
Voici le php :
<?php
session_start();
if ($_POST['Submit'] == 'Envoyer')
{
if (strcmp(md5($_POST['user_code']),$_SESSION['ckey']))
{
header("Location: index.php?msg=Erreur : Mauvais code!");
exit();
}
$to = $_POST['toemail'];
$subject = $_POST['subject'];
$message = $_POST['message'];
$fromemail = $_POST['fromemail'];
$fromname = $_POST['fromname'];
$lt= '<';
$gt= '>';
$sp= ' ';
$from= 'From:';
$headers = $from.$fromname.$sp.$lt.$fromemail.$gt;
mail($to,$subject,$message,$headers);
header("Location: index.php?msg=Mail Envoyé!");
exit();
}
?>
comment dois-je faire pour que les mails soient envoyer en utf-8 ?
A voir également:

2 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
27 mai 2016 à 12:07
Salut,

Il faut définir le paramètre charset dans les entêtes du mail (le quatrième paramètre de la fonction mail).

Tu peux voir un exemple sur la doc ici : https://www.php.net/manual/fr/function.mail.php#example-3847
Dans cet exemple il défini le charset iso-8859-1, il te suffit simplement de le remplacer par utf8.

Un autre exemple proposé dans les commentaires de la doc : https://www.php.net/manual/fr/function.mail.php#108669

Bonne journée,
0
wyzdown Messages postés 2 Date d'inscription vendredi 27 mai 2016 Statut Membre Dernière intervention 27 mai 2016
Modifié par jordane45 le 27/05/2016 à 15:48
merci mais dans mon cas alors avec ce script je dois faire comment, pourrai tu me le faire sans abimer le script ?
<?php 
session_start(); 
if ($_POST['Submit'] == 'Envoyer') 
{ 
if (strcmp(md5($_POST['user_code']),$_SESSION['ckey'])) 
{ 
header("Location: index.php?msg=Erreur : Mauvais code!"); 
exit(); 
} 
$to = $_POST['toemail']; 
$subject = $_POST['subject']; 
$message = $_POST['message']; 
$fromemail = $_POST['fromemail']; 
$fromname = $_POST['fromname']; 
$lt= '<'; 
$gt= '>'; 
$sp= ' '; 
$from= 'From:'; 
$headers = $from.$fromname.$sp.$lt.$fromemail.$gt; 
mail($to,$subject,$message,$headers); 
header("Location: index.php?msg=Mail Envoyé!"); 
exit(); 
} 
?>


EDIT : Ajout des BALISES DE CODE (jordane)
0
jordane45 Messages postés 38346 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 décembre 2024 4 717
27 mai 2016 à 15:49
Bonjour,

1 - Pense à utiliser la coloration syntaxique (les balises de code) la prochaine fois.

2 - As tu lu les liens qui t'ont été donnés ???? TOUT y est !
0