我正在使用php mail()函数从我的服务器发送邮件。它之前工作正常,但现在我没有得到简单的邮件。邮件状态为TRUE,但未收到电子邮件。我在另一台服务器上测试了它在那里的工作正常。
这是我的代码:
$to = 'myemail@gmail.com';
$name = trim($_POST['name']);
$email = trim($_POST['email']);
$phone_number = trim($_POST['phone']);
$message = trim($_POST['message']);
$subject = 'Contact Message from - ' . strip_tags($name);
$headers = "From: " . $name . " <" . $email . "> \r\n";
$headers .= "Reply-To: " . strip_tags($email) . "\r\n";
$headers .= "Content-type: text/html \r\n";
$message = '<html><body>';
$message .= '<h1>Hello, </h1>';
$message .= '</body></html>';
$message .= '<html><body>';
$message .= '<table rules="all" style="border-color: #666; border:1px solid;" cellpadding="10">';
$message .= "<tr><td><strong>Name:</strong> </td><td>" . $name . "</td></tr>";
$message .= "<tr><td><strong>Email:</strong> </td><td>" . $email . "</td></tr>";
$message .= "<tr><td><strong>Phone Number:</strong> </td><td>" . $phone_number . "</td></tr>";
$message .= "<tr><td><strong>Message:</strong> </td><td>" . $message . "</td></tr>";
$message .= "</table>";
$message .= "</body></html>";
$confirmation = mail($to, $subject, $message, $headers);
if ($confirmation) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=thanks.php\">";
} else {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.php\">";
}
答案 0 :(得分:0)
首先查看一封简单的邮件。
<?php
ini_set('display_errors',1);
$email = '';//<--your mail
if (mail($email, 'test', 'test') {
echo 'send';
} else {
echo 'problems';
}
运行它。查看您的电子邮件,如果不发送 - 请参阅显示的错误。
答案 1 :(得分:0)
检查服务器的SMTP设置可能不正确, 替代方案,您可以使用此simple SMPT send mail script.