这里有个表单:
http://troyacupuncture.com/appointment.html
通过这个表单提交数据后,数据通过以下PHP代码发送给某个邮箱:
<?php
$to = '
[email protected]';
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$phone = $_POST['phone'];
$subject = "New message from $firstname $lastname";
$headers = $_POST['email'];
$headers = 'From: ' . $headers . "\r\n";
$msg = "First name: $firstname\r\n\r\nLast name: $lastname\r\n\r\nPhone number: $phone";
$msg .= "\r\n\r\n"."Message:\r\n".$_POST['msg'];
function mail_utf8($to, $subject = '(No subject)', $message = '', $header = '') {
$header_ = 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/plain; charset=UTF-8' . "\r\n";
mail($to, '=?UTF-8?B?'.base64_encode($subject).'?=', $message, $header_ . $header);
}
mail_utf8($to, $subject, $msg, $headers);
?>
代码非常简单,没有检查表单字段是否为空。我很懒,总觉得够用就行。这些代码放到dreamhost的主机上,没啥问题。但是,如果放到bluehost的主机上,每天都会收到平均两封的以上字段为空的邮件。发送邮件的服务器是box712.bluehost.com,网站所在的共享服务器。
我找了bluehost的客服,想看看是不是他们的问题,他们说不是,是我的程序的问题。
同样的程序,放在其它主机上没问题,放在他们的主机上就会出问题,我不太相信是这段简短的程序的问题。有用过bluehost的人吗?有没有碰到类似的问题?我这是第一次使用bluehost。