Bonjour à tous ,

J'ajoute sur un csm encodé utf-8, un très simple formulaire de contact.

Le problème se traduit à la lecture du message reçu.

Exemple du message reçu :

===
Bonjour,

Je fais un essai : L'autre - à é ô où

VoilÃ
===

J'ai tenté de nombreuses modifications, mais en vain, il y a quelque chose que je ne dois pas comprendre ou qui m'a échappé.

Je me permets de venir vous demander un coup de main, et de mettre pour indication la source complète du formulaire, ci-dessous :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
<?php
 
// Sécurité
if ( !defined ( 'TAGADASH' ) )
{
    header ( 'Location: ../' );
    die ( -1 );
}
 
// Titre de la page
$page_titre = 'Contacter l&rsquo;administrateur';
$page_infos = 'Contacter l&rsquo;administrateur';
$page_texte .= "<h3 align=\"center\">Formulaire de contact</h3>";
$page_texte .= "<p align=\"center\">Ce formulaire, vous permet d'envoyer un message &agrave;  l'administrateur du site</p>";
 
if(empty($_POST))
{
	if($_GET["message"]=="ok")
	{
		$corps.="Votre mail a bien été envoyé, ainsi que votre adresse IP : ".$_SERVER['REMOTE_ADDR']."\r\n<br/>" ;
	}
	else
	{
	$premiernombre = rand(0,100);
	$secondnombre = rand(100, 200);
	$troisiemenombre = rand(0, 200);
$page_texte .="

				<form method=\"post\" action=\"index.php?page=F_contact\" style=\"width:100%;\" style=\"margin-left:5px;\">
                <fieldset>
                <legend>&nbsp;Contacter l'administrateur&nbsp;</legend>
                <br />
					Nom, Pr&eacute;nom :<br />
					<input type=\"text\" name=\"nom\" id=\"nom\"/><br />				
					Votre adresse e-mail :<br />
					<input type=\"text\" name=\"email\" id=\"email\"/><br />
					Objet du message :<br />
					<input type=\"text\" name=\"objet\" id=\"objet\"/><br />
					Message :<br />
					<textarea name=\"message\" id=\"message\" cols=\"30\" rows=\"10\" style=\"width:85%;\"></textarea><br />
					Question anti-robots :<br />
					<input type=\"text\" name=\"premiernombre\" value=".$premiernombre." size=\"1\" readonly=\"readonly\" /> 
					<input type=\"text\" name=\"secondnombre\" size=\"1\"	value=".$secondnombre." readonly=\"readonly\" /> 
					<input type=\"text\" name=\"troisiemenombre\" value=".$troisiemenombre." size=\"1\" readonly=\"readonly\" /><br />
					Recopiez les nombres contenus dans le premier et le troisi&egrave;me champ (ci-dessus) l'un &agrave; la suite de l'autre dans le champ ci-dessous :<br />
					<input type=\"text\" name=\"question\" id=\"question\" size=\"4\" />
					<br />
					<input type=\"submit\" name=\"Envoyer\" value=\"Envoyer\"/><br /><br />
					Votre adresse IP, sera jointe &agrave; votre envoi.<br /><br />
					Votre adresse IP est, ".$_SERVER['REMOTE_ADDR']." <br /><br />
                    </fieldset>

				</form>

";
	}	
}
else
{
	$temp=array_map('trim', $_POST) ;
	$post=array_map('htmlspecialchars', $temp) ;
	$erreur='' ;
		if(empty($post["nom"]))
		{
			$erreur.="<font color=\"#cc0000\">Vous n'avez pas rempli le champ \"Nom, Pr&eacute;nom\".</font><br/>" ;
		}	
		if(empty($post["email"]))
		{
			$erreur.="<font color=\"#cc0000\">Vous n'avez pas rempli le champ \"Votre adresse e-mail\".</font><br/>" ;
		}
		if(empty($post["objet"]))
		{
			$erreur.="<font color=\"#cc0000\">Vous n'avez pas rempli le champ \"Objet du message\".</font><br/>" ;
		}
		if(!empty($post["email"]) && !preg_match('#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#', $post["email"]))
		{
			$erreur.="<font color=\"#cc0000\">L'adresse e-mail que vous avez rentr&eacute; est incorrecte.</font><br/>" ;
		}
		if(empty($post["message"]))
		{	
			$erreur.="<font color=\"#cc0000\">Vous n'avez pas rempli le champ \"Votre message\".</font><br/>" ;
		}
		if($post["question"]!=$post["premiernombre"].$post["troisiemenombre"])
		{
			$erreur.="<font color=\"#cc0000\">La r&eacute;ponse &agrave; la question anti-robots ne correspond pas &agrave; la r&eacute;ponse attendue !</font><br/><br /><img src='themes/commun/images/quote.gif' alt='' width='20' height='15' />&nbsp;<a href='javascript:history.back()'>Retournez sur le formulaire !</a>&nbsp;Merci." ;
		}
	if(empty($erreur))
	{
		if(mail('votre.adressemail@fai.com', stripslashes($post["objet"]), stripslashes("Un visiteur vous a contact&eacute;\r\n\r\nSon nom : ".$post['nom']."\r\n\r\n Son adresse E-mail : ".$post["email"]."\r\n\r\n Son adresse IP : ".$_SERVER['REMOTE_ADDR']."\r\n\r\n ".$post["message"]), "From: Site Tagadash <$email>"."\r\n"."Reply-To: ".$post["email"]))
$page_texte .="
            <br />
            <center>
			<fieldset>
            <legend>&nbsp;Merci&nbsp;</legend>
			<font color=\"#1877d5\">
            <br /><br />			
                Votre message a bien &eacute;t&eacute; envoy&eacute;, ainsi que votre adresse IP : ".$_SERVER['REMOTE_ADDR']." <br /><br />			
				Je vous r&eacute;pondrai, dans les meilleurs d&eacute;lais.
            <br /><br /><br />
			</font>
            </fieldset>
            </center>
            <br />			
";
	}
	else
	{
		$page_texte .= $erreur ;
	}
}
?>
D'avance, je remercie ceux qui voudront bien se pencher sur la question.