AJAX不发送电子邮件

时间:2015-11-08 00:56:47

标签: php jquery ajax email

我正在尝试通过jquery / AJAX从表单发送简单的电子邮件。知道为什么这不起作用吗?

HTML:

<input id="referral-name" name="referral-name" type="text" placeholder="Your Name (First, Last)">
<input id="referral-email" name="referral-email" type="email" placeholder="Your Email">
<input id="friend-email" name="friend-email" type="email" placeholder="Your Friend's Email">
<button id="submit-referral">Send Referral</button>

使用Javascript:

$("#submit-referral").click(function () {

    var data = {
        referral-email: $("#referral-email").val(),
        referral-name: $("#referral-name").val(),
        friend-email: $("#friend-email").val()
    };

    $.ajax({
        type: "POST",
        url: "referral-email.php",
        data: data,
        success: function () {
            alert('Referral Sent');
        }
    });
});

PHP(在我的文件夹的根目录下命名为referral-email.php):

<?php
if($_POST){
    $referral_name = $_POST['referral-name'];
    $referral_email = $_POST['referral-email'];
    $friend_email = $_POST['friend-email'];

//send email
    mail("my_email@email.com", "Referral Submission by ".$referral_name, $referral_name." (".$referral_email.") sent ".$friend_email." a referral.");
}
?>

1 个答案:

答案 0 :(得分:0)

找到答案 -

在我的data数组变量周围添加引号可以解决问题:

var data = {
        'referral-email': $("#referral-email").val(),
        'referral-name': $("#referral-name").val(),
        'friend-email': $("#friend-email").val()
    };