【发布时间】:2013-12-29 12:39:08
【问题描述】:
谁能想出一个合乎逻辑的原因,为什么在我的 123 reg 帐户上运行良好的联系表在我的客户帐户上却无法运行?当我在我这边进行测试时,我将电子邮件和表单内容完美地发送到了我的收件箱,但是当我的客户帐户使用相同的代码以及他的电子邮件地址时,他会收到一封没有数据的电子邮件..
<?php
$EmailFrom = "webmaster@pb.co.uk";
$EmailTo = "loans@website.co.uk";
$Subject = "Testing";
$Name = Trim(stripslashes($_POST['Name']));
$Email = Trim(stripslashes($_POST['Email']));
$Message = Trim(stripslashes($_POST['Message']));
// validation
$validationOK=true;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
exit;
}
// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "eMail: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";
// send email
$success = mail($EmailTo, $Subject, $Body, "From: $EmailFrom");
// redirect to success page
if ($success){
print "<meta http-equiv=\"refresh\" content=\"0;URL=http://website/thankyou.html\">";
}
else{
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
}
?>
【问题讨论】:
-
客户端是否有正确配置的邮件服务器?
-
嗨,是的。根据 123 支持团队的说法。这就是他们所提供的帮助.. 他确实收到了电子邮件,但没有将任何数据输入到表单中..
-
我建议你把 .= 改成 simple 。
$Body = "Name: ".$Name."\n";比$Body .= "Name: "; $Body .= $Name; $Body .= "\n";更容易,并且避免在变量名中使用大写字母... -
您好,您觉得这合适吗? // 准备邮件正文 $Body = ""; $Body = "name: ".$name."\n"; $Body = "姓名:".$email."\n"; $Body = "name: ".$message."\n";