我的html编码为联系表单html页面,下面是php代码
<form name="form1" method="post" action="contact.php" id="contactform">
<table width="100%" border="0" cellspacing="1" cellpadding="3">
<tr>
<td><input name="name" type="text" id="name" ONFOCUS="clearDefault(this)" value="Name" size="90" style="background: #DAEDFF; border:1px solid #DAEDFF; border-radius:3px; height: 25px;"></td>
</tr>
<tr>
<td><input name="customer_mail" type="text" value="Email" ONFOCUS="clearDefault(this)" id="customer_mail" size="90" style="background: #DAEDFF; border:1px solid #DAEDFF; border-radius:3px; height: 25px;"></td>
</tr>
<tr>
<td width="82%"><input name="subject" type="text" value="Subject" ONFOCUS="clearDefault(this)" id="subject" size="90" style="background: #DAEDFF; border:1px solid #DAEDFF; border-radius:3px; height: 25px;"></td>
</tr>
<tr>
<td><textarea name="detail" cols="90" rows="8" id="detail" style="background: #DAEDFF; border:1px solid #DAEDFF; border-radius:3px;"></textarea></td>
</tr>
<tr>
<td style="padding-left: 530px;"><input type="submit" name="Submit" value="Send" style="background: #1B99E8; border: 1px solid #1B99E8; color: #ffffff; border-radius:3px;"></td>
</tr>
</table>
</form>
contact.php文件
<?php
$subject = $_POST['subject'];
$detail = $_POST['detail'];
$customer_mail = $_POST['customer_mail'];
$name = $_POST['name'];
// Contact subject
$subject ="$subject";
// Details
$message="$detail";
// Mail of sender
$mail_from="$customer_mail";
// From
$header="from: $name <$mail_from>";
// Enter your email address
$to ='it@reverseinformatics.com';
$send_contact=mail($to,$subject,$message,$header);
// Check, if message sent to your email
// display message "We've recived your information"
if($send_contact){
echo '<script language="javascript">confirm("We have received your request, our team will contact you shortly.")</script>';
echo '<script language="javascript">window.location = "contact.html"</script>';
}
else {
echo '<script language="javascript">confirm("Oops Sorry for the inconvinience.")</script>';
echo '<script language="javascript">window.location = "contact.html"</script>';
}
?>
以上是我的代码PLZ帮助我克服我的问题,因为我在网站上托管,它在我的本地服务器上运行良好但不在网站上工作
答案 0 :(得分:0)
我猜您的代码存在问题 window.location =“contact.html”部分。 如果您想重定向到此页面,请尝试提供绝对路径。 您也可以尝试 window.location.href 或 window.open 。 请注意, window.open将在新窗口中打开它。
答案 1 :(得分:0)
许多人对“联系我们”表单也有一个非常常见的错误。
// Mail of sender
$mail_from="$customer_mail";
这将破坏SPF并导致DMARC失败,如果您使用的邮件服务器上启用了DMARC,您将永远不会收到某些人的消息。
由于DMARC是一个更新的协议,很多旧的cookie切割代码用于联系我们表格 - 不考虑这一点。
您可以在此处详细了解:"DMARC - Contact Form Nightmare"
建议的解决方法是:
$mail_from='it@reverseinformatics.com';
$subject ="$subject" . $_POST['customer_mail'];
这样 - 您可以避免文章中的问题大纲。您将无法快速点击“回复”按钮,但至少您将收到启用了DMARC的客户的电子邮件。