PHP Mail compatible avec hotmail

Bonjour, j'ai un problème avec ce formulaire que j'ai créée. Les message a destination d'adresse hotmail n'arrive pas et je recoi dans ma boite, un message m'indiquant que le mail a destination de @hotmail n'a pas été remis.
Voici mon code :
<?php 
$nom = $_POST['nom'];
$mail = $_POST['mail'];
$sujet = $_POST['sujet'];
$message = $_POST['message'];
$headers = "From: Nomdemonsite<nomdemonsite@fai.fr>\n";
$headers .= "X-Sender: <nomdemonsite@fai.fr>\n";
$headers .= "X-Mailer: PHP\n";
$headers .= "X-Priority: 1\n";
$headers .= "Return-Path: <nomdemonsite@fai.fr>\n";
$headers .= "Content-Type: text/html; charset=iso-8859-1\n";
$transfert = "Message de :$nom\n ";
$transfert .= "Son adresse : $mail \n";
$transfert .= "Sujet : $sujet \n";
$transfert .= "Message : $message \n";
$reply = "Votre message à bien été envoyé ! Nous y répondrons rapidement à l'adresse $mail \n";
$reply .= "Cordialement, \n";
$reply .= "Nom de mon site \n";
$reply .= "http://adressedemonsite.fr \n";
$msg_erreur = "Attention ! Vous devez obligatoirement fournir : <br>";
$resultat = "$msg_erreur";
if (empty($_POST['mail']))
  $resultat .= " - Votre adresse mail <br>";
if (empty($_POST['sujet']))
  $resultat .= " - Le sujet de votre message <br>";
if (empty($_POST['message']))
  $resultat .= " - Le message que vous voulez envoyer <br>";

if (strlen($resultat) > strlen($msg_erreur)) {
	echo "<h1> Informations manquantes !</h1>";
  echo "<body> $resultat </body>";
} else {
	echo "<h1> Message envoyé ! </h1>";
	echo "<body> Votre message à bien été envoyé, vous recevrez une confirmation à l'adresse $mail </body>";
  mail ("nomdemonsite@fai.fr", "Message d'un visiteur de mon site", $transfert, "From: $mail");
  mail ("$mail", "Message envoyé ", $reply, "$headers");
}

?>

Mes headers sont ils faux ? Qu'en pensez vous ?
D'avance merci :)

1 réponse

  1. base toi sur cela car il fonctionne sur hotmail :) ce script
    <?php
    $sujet = 'Sujet de l\'email';
    $message = "Bonjour,<br />
    <strong>Ceci est un message html envoyé grâce à php.</strong><br />
    merci :)";
    $destinataire = 'destinataire@domaine.com';
    $headers = "From: \"expediteur moi\"<moi@domaine.com>\n";
    $headers .= "Reply-To: moi@domaine.com\n";
    $headers .= "Content-Type: text/html; charset=\"iso-8859-1\"";
    if(mail($destinataire,$sujet,$message,$headers))
    {
            echo "L'email a bien été envoyé.";
    }
    else
    {
            echo "Une erreur c'est produite lors de l'envois de l'email.";
    }
    ?>
    0
    1. salut,

      mais est ce qu'il l'envoie dans les spams ou dans la boite de reception ?
      0
    2. Salut gilbert :) J'ai essayer ton code, et je reçoit une erreur de la fonction mail qui me dit "Spam détecte, mail non envoyé" ... Est-ce qu'un mail de PHP mail() peut seulement arriver chez hotmail ?!
      0
    3. je ne sais pas DSL
      0
    4. oui , il arrive chez hotmail mais dans la boite spam
      0
    5. Moi, depuis un serveur free.fr, les mail n'arrive PAS chez hotmail, meme pas en Spam ... Alors j'ai decider de refuser la fonction mail() de confirmation aux adresse en @msn hotmail ou live ...
      0