Bonjour à tous,
je me permets de revenir vers vous après 2h de tests multiple suite à des soucis d'encodage lors de la repection d'un email via le formulaire.
Du coup, j'ai réutiliser des tutos pour voir si c'était bien mon code qui déconnait ou pas.
et voici le resultat :
Modifié par gringo (07 Jun 2016 - 16:14)
je me permets de revenir vers vous après 2h de tests multiple suite à des soucis d'encodage lors de la repection d'un email via le formulaire.
Du coup, j'ai réutiliser des tutos pour voir si c'était bien mon code qui déconnait ou pas.
$name = trim($_POST['name']);
$email = trim($_POST['email']);
$tel = trim($_POST['telephone']);
$message = trim($_POST['message']);
$EmailAdmin = 'monemail@email.fr';
if (!preg_match("#^[a-z0-9._-]+@(hotmail|live|msn).[a-z]{2,4}$#", $EmailAdmin))
{
$passage_ligne = "\r\n";
}
else
{
$passage_ligne = "\n";
}
//=====Déclaration des messages au format texte et au format HTML.
$message_html = "<html><head></head><body>";
$message_html.= "Nom : " . htmlspecialchars($name) . $passage_ligne;
$message_html.= "Email : " . htmlspecialchars($email) . $passage_ligne;
$message_html.= "Telephone : " . htmlspecialchars($tel) . $passage_ligne;
$message_html.= "Message : " . $passage_ligne . htmlspecialchars($message) . $passage_ligne;
$message_html.= "</body></html>";
//==========
//=====Création de la boundary
$boundary = "-----=".md5(rand());
//==========
//=====Définition du sujet.
$sujet = "Hey !";
//=========
//=====Création du header de l'e-mail.
$header = "From: " . $name . "<" . $email . ">" . "\r\n" . "To: " . $EmailAdmin . $passage_ligne;
$header .= "Reply-to: " . $name . "<" . $email . ">" . "\r\n" . "To: " . $EmailAdmin . $passage_ligne;
$header .= "MIME-Version: 1.0" . $passage_ligne;
$header .= "Content-Type: multipart/alternative;" . $passage_ligne . " boundary=\"$boundary\"" . $passage_ligne;
//==========
//=====Ajout du message au format HTML
$messageT.= "Content-Type: text/html; charset=\"ISO-8859-1\"".$passage_ligne;
$messageT.= "Content-Transfer-Encoding: 8bit".$passage_ligne;
$messageT.= $passage_ligne.$message_html.$passage_ligne;
//==========
$messageT.= $passage_ligne."--".$boundary."--".$passage_ligne;
//==========
//=====Envoi de l'e-mail.
mail($EmailAdmin,$sujet,$messageT,$header);
//==========
et voici le resultat :
To: monemail@email.fr
Reply-to: tessst<toto@toto.lu>
To: monemail@email.fr
MIME-Version: 1.0
Content-Type: multipart/alternative;
boundary="-----=b77dda4d6797669a3875c42e1f576955"
Message-Id: <20160607124354.77638E07C@web1.cbcvo.local>
Date: Tue, 7 Jun 2016 14:43:54 +0200 (CEST)
Content-Type: text/html; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
<html><head></head><body>Nom : tessst
Email : toto@toto.lu
Telephone : 4006301
Message :
feafe af llllllllllllllllllll
</body></html>
-------=b77dda4d6797669a3875c42e1f576955--
Modifié par gringo (07 Jun 2016 - 16:14)