PHPMailer “$mail->MsgHTML($msg)” problème avec “$msg”

Je pose la question ici car je n'ai pas eu une réponse d'OVH (mon hôte).
Voici le problème :
Si je remplace $mail->MsgHTML($msg) avec $mail->MsgHTML($_POST['message']), je reçois le mail instantanément avec les en-têtes, nom, e-mail, l'objet et le message.
Mais quand j'ai mis $msg au lieu de cela, je reçois pas de mail.

$msg='Name:'.$_POST['name'].'<br />
Email:'.$_POST['email'].'<br />
Subject: '.$_POST['subject'].'<br />
IP:'.$_SERVER['REMOTE_ADDR'].'<br /><br />

Message:<br /><br />

'.nl2br($_POST['message']).'

';

ensemble de PHP (à partir de FancyAJAXForm):

<?php
/* config start */

$emailAddress = 'my mail address';

/* config end */

require "class.phpmailer.php";

foreach($_POST as $k=>$v)
{
if(ini_get('magic_quotes_gpc'))
$_POST[$k]=stripslashes($_POST[$k]);

$_POST[$k]=htmlspecialchars(strip_tags($_POST[$k]));
}


$msg='Name:'.$_POST['name'].'<br />
Email:'.$_POST['email'].'<br />
Subject: '.$_POST['subject'].'<br />
IP:'.$_SERVER['REMOTE_ADDR'].'<br /><br />

Message:<br /><br />

'.nl2br($_POST['message']).'

';

$mail = new PHPMailer();
$mail->IsMail();

$mail->AddReplyTo($_POST['email'], $_POST['name']);
$mail->AddAddress($emailAddress);
$mail->SetFrom($_POST['email'], $_POST['name']);
$mail->Subject = "Contact Form: ".mb_strtolower($_POST['subject'])." from    ".$_POST['name']."";

$mail->MsgHTML($msg);

$mail->Send();

?>
  • vous pouvez poster à la sortie de var_dump($msg)
  • Avez-vous vérifier la valeur de retour de Send()? Avez-vous vérifier votre dossier spam? Avez-vous regardez les en-têtes des e-mail qui a fait passer à travers (il devrait y avoir quelques info sur le chemin de l'e-mail prend, certains serveurs de relais sont plus difficiles que d'autres à propos de ce qu'ils passent à travers)?
  • le var_dump($msg) retour : "Nom: Email: Objet: IP: **mon Message ip:" DCoder: Comme je l'ai dit, je reçois des mail lorsque je remplace MsgHTML($msg) par MsgHTML($_POST['message']);
  • je suppose que c'est le fait d'être arrêté par un filtre anti-spam, essayez de les envoyer à un compte sur la machine locale et de voir si vous recevez le message d'
  • Un compte sur la machine locale? Je ne sais pas comment faire... je suis en attente d'une réponse de OVH. Peut-être qu'il faudra plus de temps pour ce genre de mail pour être traitées par le serveur? Merci pour vos réponses, si quelqu'un a une idée ou envie de partager une pensée, il est bienvenu.
InformationsquelleAutor unK | 2012-04-29