Problème d'accents dans formulaire

DM -  
jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   -
bonjour. J'ai refait un formulaire de contact (php) sur un site html.
Le formulaire fonctionne bien, mais quand on reçoit le courriel, les caractères avec accents ne sont pas pris en compte même si j'ai mis la balise utf-8 dans mon php. Voici ce que ça donne: De: diane MÉnard
Message: é ô û î l'
______________________________________________________

Voici mon code php:
______________________________________________________
<?php
header( 'content-type: text/html; charset=utf-8' );

$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST["subject"];
$message = $_POST['message'];

______________________________________________________

et mon code html où il y a le formulaire:
______________________________________________________
<html>

<head>

<!-- Basic -->

<meta charset="UTF-8">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

Si vous pouvez m'aider...
merci beaucoup

2 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    Bonjour

    Déjà, commence par appliquer ce qui est indiqué ici
    https://forums.commentcamarche.net/forum/affich-37584944-php-html-caracteres-accentues-et-l-utf8

    Ensuite, il va nous falloir le code complet.
    Et pour poster ton code correctement sur le forum, tu vas devoir utiliser les balises de code. https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

    0
  2. DM
     
    voici le code php

    <?php	
    header( 'content-type: text/html; charset=utf-8' );
    
    
    $name = $_POST['name'];
    $email = $_POST['email'];
    $subject = $_POST["subject"];
    $message = $_POST['message'];
    
    $formcontent="De: $name \n Message: $message";
    $recipient = "moncourriel@moncourriel";
    $subject = "Demande d'informations";
    $mailheader = "From: $email \r\n";
    
    mail($recipient, $subject, $formcontent, $mailheader) or die("Erreur!");
    echo "Merci, votre message a été envoyé!";
    ?>
    0
    1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
       
      Il faut que tu te penche sur le mail_header
      Tu trouveras de nombreuses exemples sur internet pour l'envoi de mail de type HTML et pour lesquels tu peux spécifier le charset
      0