所以我试图从jQuery函数发送一个对象到PHP脚本通过邮件()发送它们,但我的电子邮件总是空的,所以我想我可能没有真正理解我应该怎么做,以使其正常工作JQuery对象通过ajax发送邮件()
这里是jQuery函数
function sendForm() {
$surname = $('#surname').val();
$name = $('#name').val();
$email = $('#email').val();
$comment = $('#q4').val();
$to = '[email protected]'
$subject = 'Contact Form'
$datastring = {$surname,$name,$email,$comment,$to,$subject}
$.ajax({
url: 'send.php',
type: 'post',
data: $datastring,
success: function() {
alert('email sent!');
}
});
return false;
}
这里的send.php
<?php
$to = $_POST[$to];
$subject = $_POST[$subject];
$message = $_POST[$comment];
$headers = 'From: [email protected]' . "\r\n" .
'Reply-To: [email protected]' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
?>
我失去了什么?谢谢您的帮助!
编辑:我检查了$ datastring,它有我想要的形式的所有值。保存为对象
请检查您正在发送$到变量的$ to,$ subject,$消息的值? –
开发时,对值进行一些简单的调试很有用。例如,在php脚本中添加'var_dump($ _ POST)',这将有助于查看您实际发送的内容。 (并且在您的ajax成功函数中,您可以使用'console.log'来显示返回值,或使用浏览器的网络检查工具) –