Problème d'accents

Statut
N'est pas ouverte pour d'autres réponses.

cck_roa

Touriste
Hello,

Voilà, je suis occupé de faire un bête formulaire de contact.
Donc j'ai mon formulaire avec mes champs "nom,prenom,email,texte...", ensuite j'ai ma page qui va récupérer les valeurs des champs du formaires pour pouvoir envoyé un mail via la fonction mail() en php.

Tout ca fonctionne bien, je recois bien mon mail et tout, mais pas moyen d'avoir des accents corrects, j'ai tjs les accents sous la forme html (&eacute ...)

Voici mon code au cas ou ca pourrait aider... (meme surement :))

<?php
$adresse='mon@mail.com';
$sujet='Mon sujet';
$from=sprintf("From : %s",$_POST['email']);
$from.=sprintf("Reply-To: %s ",$_POST['email']);
$texte= sprintf("%s %s vous à envoyé un mail ... Voici son adresse e-mail : %s",$_POST['nom'],$_POST['prenom'],$_POST['email']);
$texte.=addslashes($_POST['texte']);


if (mail($adresse=htmlentities($adresse) ,$sujet=htmlentities($sujet) ,$texte=htmlentities($texte),$from=htmlentities($from) ))
echo("Nous vous re-contacterons dans les plus bref délais<a href=index.php>Cliquez ici pour revenir &agrave; l'accueil</a:colere:/center>");
else
echo("<font color=red>Probl&egrave;me &agrave; l'envoi du mail...d&eacute;sol&eacute; nous ne pouvons actuellement traiter votre demande</font>");

?>
Merci de votre aide :)
 

II phl II

Touriste
J'ai le même problème

J'ai beau essayé en récupérant les données du POST avec un htmlentities mais ça ce fait qu'empirer les choses :/
 

Jereck

Α & Ω
Staff
force ton mail en HTML

$from = "MIME-Version: 1.0\r\n";
$from .= "Content-type: text/html; charset=iso-8859-1\r\n";
$from .= "From: " . $_POST['email'] . "\r\n";
....
 

II phl II

Touriste
mhmm pour moi en tout cas cela ne fonctionne pas :beuh:

code :

<?php
$from = "MIME-Version: 1.0\r\n";
$from .= "Content-type: text/html; charset=iso-8859-1\r\n";
$from .= $_POST['de1']."@".$_POST['de2'];
$to = "mail@mail.be";
$object = $_POST['sujet'];
$msg = $_POST['message'];
$msg.= "\n\n(Message venant de $from via www.blabla.be)";

mail ($to, $object, $msg, "From: $from");
?>


une idée ?
 

Jereck

Α & Ω
Staff
1° oublie pas le \r\n après les adresses mail
2° essaie de mettre un autre encodage à la 3e ligne
 

AssiuM

Fan
Si ça peut t'aider, voici un code que j'utilise :)

[gv3box=code]
<?PHP
if(isset($_POST['message'])) {
$header="From: ".$email1."\n";
$header .="MIME-Version: 1.0\n";
$header .="Content-Type: multipart/alternative;boundary=$boundary\n";

$message = "\nThis is a multi-part message in MIME format.";
$message .="\n--$boundary\nContent-Type: text/html;charset=\"iso-8859-1\"\n\n";
$message2 = str_replace('\n','<br />',$_POST['message']);
$message.="
<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">
<html>
<head>
<meta content=\"text/html; charset=ISO-8859-1\"
http-equiv=\"content-type\">
<title>envoi message :)i</title>
</head>
<body>
<br />
<small style=\"font-style: italic;\">Ceci est un message
envoy&eacute; via blablabla</small:colere:br>
<br>
<span style=\"text-decoration: underline;\">Nom de
l'exp&eacute;diteur</span> : <span
style=\"font-weight: bold;\">{$_POST['nom']} {$_POST['prenom']} </span:colere:br>
<br>
<span style=\"text-decoration: underline;\">Question</span>
:<br>
<span style=\"font-weight: bold;\">";
$message .= $message2;
$message .="
</span>
</body>
</html>";
mail('destinataire@machin.com','Sujet du message',$message,$header);
echo "Message envoyé avec succès";
}
?>

[/gv3box]
 

II phl II

Touriste
mhmm décidemment :-'

avec ton code Assium :

message envoyé :
helloahh éé çç àà

message reçu :
helloahh C)C) C'C' C C -------

qui a dit bizarre :oops:

une autre idée ?

EDIT : j'ai essayé avec Thunderbird et Outlook Express, même résultat
 

Jereck

Α & Ω
Staff
vérifie que l'encodage de ton script PHP est le même que celui que tu annonces dans l'en-tête du mail
 

II phl II

Touriste
rah bien vu Jereck :oops:

la page où se trouve le formulaire était dans un encodage différent
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

en mettant en ISO-8859-1 tout roule :-D

Merci :love:
 
1er
OP
cck_roa

cck_roa

Touriste
Ah merci bien .. ca fonctionne aussi pour chez moi ;)
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut