Ajax - php表单带(phpmailer类)每天自动发送邮件有什么问题


Ajax - php form with (phpmailer class) send emails automatically every day what is wrong?

嗨,我已经使用了这个教程http://net.tutsplus.com/tutorials/javascript-ajax/submit-a-form-without-page-refresh-using-jquery/

创建PHP - jquery - ajax表单,现在我每天都收到空表单邮件(每天早上2封邮件)甚至知道,要访问表单所在的页面是用户需要先登录的…

所以它怎么可能每天从受保护的页面....发送空邮件/表单有一些检查,如果一些字段是空的,它不会发送它…但我仍然收到空邮件…

我想可能是某种网络爬虫和机器人触发了这个?因为它总是在一天的同一时间,没有用户登录等(它在邮件中发布用户登录信息,并且在这些邮件中为空)

难道是这些机器人怎么保护它?如果没有,还有其他原因吗?

感谢
<?php
if ((isset($_POST['Firma'])) && (strlen(trim($_POST['Firma'])) > 0)) {
    $Firma = stripslashes(strip_tags($_POST['Firma']));
}
if ((isset($_POST['Adresse'])) && (strlen(trim($_POST['Adresse'])) > 0)) {
    $Adresse = stripslashes(strip_tags($_POST['Adresse']));
}
if ((isset($_POST['Telefon'])) && (strlen(trim($_POST['Telefon'])) > 0)) {
    $Telefon = stripslashes(strip_tags($_POST['Telefon']));
}
if ((isset($_POST['PostNr'])) && (strlen(trim($_POST['PostNr'])) > 0)) {
    $PostNr = stripslashes(strip_tags($_POST['PostNr']));
}
if ((isset($_POST['By'])) && (strlen(trim($_POST['By'])) > 0)) {
    $By = stripslashes(strip_tags($_POST['By']));
}
if ((isset($_POST['Email'])) && (strlen(trim($_POST['Email'])) > 0)) {
    $Email = stripslashes(strip_tags($_POST['Email']));
}
if ((isset($_POST['Fax'])) && (strlen(trim($_POST['Fax'])) > 0)) {
    $Fax = stripslashes(strip_tags($_POST['Fax']));
}
if ((isset($_POST['Web'])) && (strlen(trim($_POST['Web'])) > 0)) {
    $Web = stripslashes(strip_tags($_POST['Web']));
}
if ((isset($_POST['editorName'])) && (strlen(trim($_POST['editorName'])) > 0)) {
    $editorName = stripslashes(strip_tags($_POST['editorName']));
}
if ((isset($_POST['editorMail'])) && (strlen(trim($_POST['editorMail'])) > 0)) {
    $editorMail = stripslashes(strip_tags($_POST['editorMail']));
}
if ((isset($_POST['persons'])) && (strlen(trim($_POST['persons'])) > 0)) {
    $persons = $_POST['persons'];
}
if ((isset($_POST['username'])) && (strlen(trim($_POST['username'])) > 0)) {
    $username = $_POST['username'];
}
$personsname[] = array();
$personsmail[] = array();
$personsnews[] = array();
$personsmedelm[] = array();
ob_start();
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title> </title>
</head>
<body>
Firma : <?=$Firma;?><br/>
Adresse : <?=$Adresse;?><br/>
Telefon : <?=$Telefon;?><br/>
PostNr : <?=$PostNr;?><br/>
By : <?=$By;?><br/>
Email : <?=$Email;?><br/>
Fax : <?=$Fax;?><br/>
Web : <?=$Web;?><br/><br/><br/>
<?=$persons;?>
Redigeret af: <?=$editorName;?> &nbsp; - &nbsp; <?=$editorMail;?><br/>
Filled by : <?=$username;?>
</body>
</html>
<?php
$to = 'i@i.dk'; 
$email = 'i@i.dk';
$fromaddress = "i@i.dk"; 
$fromname = "i@i.dk";
require("phpmailer.php");
$mail = new PHPMailer();
$mail->From     = "i@i.dk"; 
$mail->FromName = "i@i.dk";
$mail->AddAddress("i@i.dk","i.dk");
$mail->AddAddress("i@i.dk","i.dk"); 
$mail->WordWrap = 50;
$mail->IsHTML(true);
$mail->CharSet = "UTF-8";
$mail->Encoding = 'quoted-printable';
$mail->Subject  =  "Mail";
$mail->Body     =  $body;
$mail->AltBody  =  "This is the text-only body";
if($Firma != '' && $Firma != null){
if(!$mail->Send()) {
    $recipient = 'i@i.dk';
    $subject = 'Mail';
    $content = $body;   
  mail($recipient, $subject, $content, "From: i@i.dk'r'nReply-To: i@i.dk'r'nX-Mailer: DT_formmail");
  exit;
}
}
?>

如果您可以访问服务器日志,请检查在这些时间连接到您的站点的用户代理。可能是某种机器人,它试图访问您页面源中列出的每个URL(也是javascript post到的URL,向您发送电子邮件)。我敢打赌,你只有在Javascript中验证,你没有验证码?