Afficher lettres avec accent correctement php
Bonsoir à tous, j'ai créer un formulaire sur une page contact.php et une autre page traitement.php pour récupérer les messages (par mail) que les visiteurs laisseront sur mon site.
Le soucis est que je reçois bien le mail mais les lettres avec accents (éàü...) s'affichent assez bizarrement et avec beaucoup de points d’interrogation. je vous envoie le code de la page traitement.php, merci d'avance:
Le soucis est que je reçois bien le mail mais les lettres avec accents (éàü...) s'affichent assez bizarrement et avec beaucoup de points d’interrogation. je vous envoie le code de la page traitement.php, merci d'avance:
<?php
$name_error = $email_error = "";
$name = $email = $phone = $message = $success = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$name_error = "Nom & Prénoms Obligatoires!";
} else {
$name = test_input($_POST["name"]);
if (!preg_match("/^[\pL\pM\p{Zs}.-]+$/u",$name)) {
$name_error = "Seul les Lettres sont autorisées";
}
}
if (empty($_POST["email"])) {
$email_error = "Adresse Mail Obligatoire!";
} else {
$email = test_input($_POST["email"]);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$email_error = "Format d'Adresse Mail Invalide!";
}
}
if (empty($_POST["message"])) {
$message = "";
} else {
$message = test_input($_POST["message"]);
}
if ($name_error == '' and $email_error == '' ){
$message_body = '';
unset($_POST['submit']);
foreach ($_POST as $key => $value){
$message_body .= "$key: $value\n";
}
$to = 'monmail@enfin.ouf';
$subject = 'Message Provenant du Site Internet';
if (mail($to, $subject, $message_body)){
$success = "Message envoyé, nous vous contacterons très bientôt";
$name = $email = $message = '';
}
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>