我在这里问,因为我没有从OVH(我的托管)得到答案。 这里是问题: 如果我用$ mail-> MsgHTML($ _ POST ['message'])替换$ mail-> MsgHTML($ msg),我立即收到包含标题,名称,电子邮件,主题和信息。 但是,当我把$味精,而不是我收到邮件。
$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']).'
';
整个PHP(从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();
?>
你可以发布'var_dump($ msg)' – ilanco
的输出你检查过Send()的返回值吗?你检查过垃圾邮件文件夹吗?你看过电子邮件的标题了吗(应该有关于电子邮件路径的一些信息,一些中继服务器比其他人更关心他们传递的信息)? – DCoder
@ilanco:后续代码var_dump($ MSG)的回报: “姓名: 电子邮件: 主题: IP:**我的IP 消息: ” DCoder:正如我所说的,我收到邮件时,我代替MsgHTML($ msg)by MsgHTML($ _ POST ['message']); – unK