我正在尝试制作一个联系表单,用户可以填写详细信息,然后将其发送到我的电子邮件地址。 PHP脚本说它已发送但是当我检查我的电子邮件时没有邮件。我也试图用AJAX实现这个。这是我的代码
$('#submit').click(function () {
var name = $('#name').val();
var email = $('#email').val();
var message = $('#message').val();
$.ajax({
type: 'POST',
url: 'send.php?name=' + name,
data: 'name=' + name + '&email=' + email + '&message=' + message,
success: function (result) {
// $('#submit_wrp').load(location.href + ' #submit');
$("#result").html(result);
// $('#submit').val("Invited");
// alert(name + " " + email);
},
error: function (result) {
alert("error" + name);
$("#result").html(result);
}
});
});
这是PHP代码
$Rname = $_POST['name'];
$meesg = $_POST['message'];
$email = $_POST['email'];
$to = "example@gmail.com";
$subject = "Review";
$message = $meesg;
$headers = "From:" + $Rname + $email;
mail($to, $subject, $message, $headers);
if (mail($to, $subject, $message, $headers)) {
echo "Mail was sent and has done its job.";
} else {
echo "Error, check your logs.";
}
请帮助!!!!
答案 0 :(得分:0)
对您的值进行硬编码,然后再次检查。
$to = 'nobody@example.com';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: webmaster@example.com' . "\r\n" .
'Reply-To: webmaster@example.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
如果有问题,请检查服务器上的smtp设置。
答案 1 :(得分:0)
您是否在托管公司的论坛上搜索邮件php的可能性? 试着看一下sendmail_path:
<?php
phpinfo();
?>
可能没有正确配置。
此外,您可能需要使用电子邮件发送更多标头,以防止过滤到spambox。
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
$headers .= "From: frommail@gmail.com" . "\r\n" ."Reply-To: tomail@gmail.com". "\r\n" ."X-Mailer: PHP/" . phpversion();