[Résolu] Mail ecrit en chinois illisible envoye via un formulaire

Mail ecrit en chinois illisible envoye via un formulaire [Résolu] - PHP - Programmation

Marsh Posté le 31-01-2008 à 15:30:19    

Bonjour a tous,
 
j ai cree un formulaire tres simple sur mon site pour que les visiteurs puissent m ecrire un message sans passer par leur boite email.
Une fois qu'ils ont envoye leur message je recois ce dernier dans ma boite email.
 
Mon probleme est que la plupart des visiteurs ecriront en chinois dans mon formulaire et dans ce cas, le mail que je recois dans ma boite est comme ceci : �容
Si le visiteur ecrit en langue latine c est bon.
Ma page html est en utf-8 ainsi que la page du php.
 
J ai egalement mis dans ma page php le code : "Content-Type: text/plain; charset=UTF-8\r\n"; "Content-Transfer-Encoding: 8bit\r\n";
 
Mais rien n'y fait, je ne peux toujours pas lire les messages.
 
Pour etre sur que ca ne vienne pas de ma boite email j ai egalement essaye en recevant les messages du formulaire sur une boite email chinoise et ordinateur chinois... Toujours pareil, c est illisible!
 
J espere que quelqu un pourra m aider a resoudre ce probleme. Voici le script php :
 

Code :
  1. <code type="php">
  2. <?php
  3. $mail = $_POST['mail'];
  4. $point = strpos($mail,"." );
  5. $aroba = strpos($mail,"@" ); 
  6. $entete = "From: <$mail>\r\n";
  7. $entete .= "Content-Type: text/plain; charset=UTF-8\r\n";
  8. $entete .= "Content-Transfer-Encoding: 8bit\r\n";
  9. $message = stripslashes(htmlentities($_POST["message"]));
  10. $destinataire="monmail@hotmail.com";
  11. $objet=$_POST['objet'];
  12. if (trim($message)=="" )
  13. {
  14.         echo "你必须写上信息!Your message is empty!";
  15. }
  16. elseif ($mail=='')
  17. {
  18.         echo "你必须写上你的邮件地址! You must write your email!";
  19. }
  20. elseif($point=='')
  21. {
  22. echo "你的邮件地址必须有一个 <b>.</b>";
  23. }
  24. elseif($aroba=='')
  25. {
  26. echo "你的邮件地址必须有一个 <b>'@'</b>";
  27. }
  28. else
  29. {
  30.         mail($destinataire,$objet,$message,$entete);
  31.         echo "发送成功 Your message has been sent";
  32. }
  33. ?>


 
 
Voici la partie html du formulaire :  
 

Code :
  1. <code type="html">
  2. <form method="post" action="test2.php" accept-charset="utf-8">
  3.   <div style="text-align: center;"> </div>
  4.   <h2 style="text-align: center; font-style: italic;">联系我们</h2>
  5.   <p>email <br />
  6.   <input name="mail" type="text" /><input
  7. name="objet" value="Vous avez un nouveau message"
  8. type="hidden" /></p>
  9.   <p>内容 Your message <br />
  10.   <textarea cols="66" rows="6" name="message"></textarea>
  11.   </p>
  12.   <p> <input value="发送" type="submit" /></p>
  13. </form>


 
Merci


Message édité par kenbas le 01-02-2008 à 04:59:55
Reply

Marsh Posté le 31-01-2008 à 15:30:19   

Reply

Marsh Posté le 31-01-2008 à 20:09:40    

Pour moi c'est du chinois  :D  
 
Qu'entends-tu par : "Mais rien n'y fait, je ne peux toujours pas lire les messages"
 
Tu ne t'attends pas à une traduction automatique, j'espère ?  :pt1cable:


---------------
Directeur Technique (CTO)
Reply

Marsh Posté le 31-01-2008 à 20:28:31    

essais en unicode ca ira p-e mieux ...


---------------
In a world without walls and fences, who needs Windows and Gates
Reply

Marsh Posté le 01-02-2008 à 04:19:40    

CyberDenix a écrit :

Pour moi c'est du chinois  :D  
 
Qu'entends-tu par : "Mais rien n'y fait, je ne peux toujours pas lire les messages"
 
Tu ne t'attends pas à une traduction automatique, j'espère ?  :pt1cable:


 
Je veux dire qu une fois que je recois le mail, le message n est plus ecrit en chinois mais comme ceci : &aring;��&aring;&reg;&sup1;

Reply

Marsh Posté le 01-02-2008 à 04:35:40    

Le message que tu recois est en HTML entities a cause de ton code en ligne 9.
Si tu enleves la fonction ca ira mieux deja ;)


---------------
Jeu de simulation Boursière - Version BETA - https://www.facebook.com/wildstocks
Reply

Marsh Posté le 01-02-2008 à 04:51:44    

Zedlefou a écrit :

Le message que tu recois est en HTML entities a cause de ton code en ligne 9.
Si tu enleves la fonction ca ira mieux deja ;)


 
Exact,  j ai ecrit : $message = stripslashes($_POST["message"]);  et je peux lire les mails desormais.
 
Merci bien zedlefou

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed