Php 联系人表单给我发送空邮件
我有一个很好用的联系方式。如果有人给我发电子邮件,我就会收到。但不管出于什么原因,我总是收到空邮件。由于没有人可以访问该页面,我肯定不是有人给我发送空邮件。我不知道是什么问题。有什么帮助吗Php 联系人表单给我发送空邮件,php,contact-form,Php,Contact Form,我有一个很好用的联系方式。如果有人给我发电子邮件,我就会收到。但不管出于什么原因,我总是收到空邮件。由于没有人可以访问该页面,我肯定不是有人给我发送空邮件。我不知道是什么问题。有什么帮助吗 <form method="post" id="contactform" name="contactform" action="comment.php" id="ContactForm" name="ContactForm" method="post"> <fieldset&
<form method="post" id="contactform" name="contactform" action="comment.php" id="ContactForm" name="ContactForm" method="post">
<fieldset>
<label>Email *</label>
<input class="text" type="text" name="email">
<label>Name *</label>
<input class="text" type="text" name="name" />
</fieldset>
<input class="submit-button" type="submit" name="submit" id="submit" value="Send" />
</form>
and my contact.php
<?php
$email.= "<b>Email : </b>".trim($_POST['company'])."<br/>";
$email.= "<b>Name : </b>".trim($_POST['name'])."<br/>";
//Replace YourEmailAddress@Yourdomain.com with yours, eg:contactus@mywebsite.com
//Both on the next line and on the mail function below.
$headers = "From: email@email.com\r\n";
$headers .= "Content-Type: text/html";
mail(
"Your Name<myname>",
"Header",
$email,
$headers
);
header("www.google.com");
?>
电子邮件*
名字*
还有我的contact.php
我的php表单中的“标题”部分是在发送表单后将用户重定向到页面
提前感谢。可能是因为您似乎没有验证表单输入,所以可以空白提交 有时我会对网站这样做(测试验证,最后发送空白电子邮件),但我通常会在稍后添加一条消息“验证您的输入!”
如果你真的在做验证,请原谅,但这是我的直觉,因为我看到很多人甚至无法验证所需输入的存在,更不用说完整性了。你可能会受到机器人的访问。您的脚本将始终触发电子邮件,即使不存在POST数据 在联系人脚本中,作为基本的保护措施,添加如下内容
if ($_POST["submit"] != "Send")
die();
根据需要添加进一步的验证(如评论中指出的) 公司在您的表单中不存在,但您尝试解析它
也许2表单名称声明不是很好,但它不是你的答案。你检查过你的服务器日志,看看内容是否至少达到了这个程度吗?它要么工作正常,要么没有。挑一个?!保护薄弱,但这是一个良好的开端(基本原理是+1)。如果垃圾数据来自机器人,通常不会有垃圾数据吗?Mad我指的是搜索引擎机器人执行GET请求,而不是试图发送垃圾邮件的恶意机器人。对于恶意的表单,这确实是太弱的保护,因为@Tomalak saysAlso验证表单字段本身(它们不是空的)。另外,我在一个额外的字段中加入了一个简单的人工验证字段(“添加这两个数字”),以尝试击倒表单机器人。我不知道爬虫程序遵循表单操作,对吗?不,根据我的经验,大多数初级脚本编写者都不需要验证。你必须被很好地烧掉,或者有一个强有力的商业论据来“度过难关”。我这样做不是为了故意激怒任何人,我只是想看看其他网站如何从UI的角度处理表单验证,答案通常是“他们不是”