-3

我正在使用下面的脚本发送电子邮件,不幸的是,它不适用于我的虚拟主机英国帐户。

他们的帮助台告诉我这可能是因为他们已经停用了 php 邮件功能。

所以我的问题是:下面的代码是使用 php 邮件功能吗?如果是这种情况,使其符合“SMTP 身份验证”的难度有多大?

非常感谢

<?php
$sendto   = "myaddress@gmail.com";
$usermail = $_POST['email'];
$username = $_POST['name'];
$content  = nl2br($_POST['msg']);

$subject  = "New Message frm";
$headers  = "From: " . strip_tags($usermail) . "\r\n";
$headers .= "Reply-To: ". strip_tags($usermail) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";

$msg  = "<html><body style='font-family:Arial,sans-serif;'>";
$msg .= "<h2 style='font-weight:bold;border-bottom:1px dotted #ccc;'>New message</h2>\r\n";
$msg .= "<p><strong>From:</strong> ".$username."</p>\r\n";
$msg .= "<p><strong>E-mail:</strong> ".$usermail."</p>\r\n";
$msg .= "<p><strong>Message:</strong> ".$content."</p>\r\n";
$msg .= "</body></html>";


if(@mail($sendto, $subject, $msg, $headers)) {
    echo "true";
} else {
    echo "false";
}

?>
4

1 回答 1

0

如果你想让它符合 SMTP,那么我建议你去寻找 PHPMailer 库,它只是几个类(如果我没记错的话,你只需要一个),它会让它符合 SMTP,而且它是比使用更推荐mail()

另外,尝试将 @ 从mail()函数中取出,是的,它正在使用@mail().

希望这可以帮助。:)

于 2012-09-17T12:51:12.327 回答