PHP没有';t回应Ajax请求


PHP doesn't echo to Ajax request

我试图使用Ajax请求用PHP发送电子邮件,但我在PHP文件上的"echo"似乎不起作用,我不知道为什么。

考虑到我的PHP代码是错误的,我用下面发布的"echo"替换了我的代码,但它仍然不起作用。

我正在发布我的HTML、JS、PHP以及firebug响应,但我不太理解。

HTML

<form id="contactForm" class="contact-form">
    <div class="form-group form-icon-group">
         <input class="form-control" id="name" name="name" placeholder="Nome" type="text" required title="Por favor, preencha esse campo." x-moz-errormessage="Por favor, preencha esse campo."/>
         <i class="fa fa-user"></i>
    </div>
    <div class="form-group form-icon-group">
        <input class="form-control" id="email" name="email" placeholder="Email" type="email" required title="Por favor, preencha esse campo corretamente." x-moz-errormessage="Por favor, preencha esse campo corretamente.">
        <i class="fa fa-envelope"></i>
    </div>
    <div class="form-group form-icon-group">
        <textarea class="form-control" id="message" name="message" placeholder="Qual sua mensagem?" rows="10" required title="Por favor, preencha esse campo." x-moz-errormessage="Por favor, preencha esse campo.">  </textarea>
        <i class="fa fa-pencil"></i>
    </div>
    <div>
       <a id="btnEnviar" value="Enviar Email" class="btn btn-primary btn-lg">Enviar Email</a>
    </div>
    <div>
        <label id="labelResposta" style="font-size: 22px; margin-top: 20px; display: none;">Email enviado com sucesso!</label>
    </div>
    <div id="messages"></div>
</form>

JS-

$('#btnEnviar').click(function() {
    $('#btnEnviar').html('Enviando...');
    $('#btnEnviar').attr('disabled', 'disabled');
    var formData = {
        nome: $('#name').val(),
        email: $('#email').val(),
        message: $('#message').val()
    };
    // console.log(formData);
    // console.log($("#contactForm").serialize());
    if(!formData.nome) {
        $('#btnEnviar').html('Enviar Email');
        $('#btnEnviar').removeAttr('disabled');
        $('#labelResposta').html('Por favor preencha seu nome.');
        $('#labelResposta').fadeIn();
        setTimeout(function() {
            $('#labelResposta').fadeOut();
        }, 3000);
    } else if(!formData.email) {
        $('#btnEnviar').html('Enviar Email');
        $('#btnEnviar').removeAttr('disabled');
        $('#labelResposta').html('Por favor preencha seu email.');
        $('#labelResposta').fadeIn();
        setTimeout(function() {
            $('#labelResposta').fadeOut();
        }, 3000);
    } else if(!formData.message) {
        $('#btnEnviar').html('Enviar Email');
        $('#btnEnviar').removeAttr('disabled');
        $('#labelResposta').html('Por favor preencha sua mensagem.');
        $('#labelResposta').fadeIn();
        setTimeout(function() {
            $('#labelResposta').fadeOut();
        }, 3000);
    } else {
        $.ajax({
            url: 'file:///home/phellipe/Desktop/projetos/phperin/email/email_processor.php',
            type: "POST",
            data: formData,
            success: function(data) {
                $('#btnEnviar').html('Enviar Email');
                $('#btnEnviar').removeAttr('disabled');
                $('#labelResposta').html('Email enviado com sucesso!');
                $('#labelResposta').fadeIn();
                setTimeout(function() {
                    $('#labelResposta').fadeOut();
                }, 3000);
            },
            error: function(x, e){
                console.log(x);
                console.log(e);
                if(x.status==0){
                    $('#labelResposta').html('Você não está online!'n Por favor, verifique sua conexão.');
                }else if(x.status==404){
                    $('#labelResposta').html('URL não encontrada.');
                }else if(x.status==500){
                    $('#labelResposta').html('Erro interno.');
                }else if(e=='parsererror'){
                    $('#labelResposta').html('Erro de parse.');
                }else if(e=='timeout'){
                    $('#labelResposta').html('Timeout.');
                }else {
                    $('#labelResposta').html('Erro desconhecido.'n'+x.responseText);
                }
                $('#btnEnviar').html('Enviar Email');
                $('#btnEnviar').removeAttr('disabled');
                $('#labelResposta').fadeIn();
                setTimeout(function() {
                    $('#labelResposta').fadeOut();
                }, 3000);
            }
        });
    }
    return false;
});

PHP(测试)

<?php echo "string"; ?>

PHP(真实)

<?php
$sender_name = trim(ucfirst($_REQUEST['nome']));
$sender_email = trim($_REQUEST['email']);
$sender_message = trim(ucfirst($_REQUEST['message']));
$html_email = '<!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <title>PhPerin</title>
    </head>
    <body>
          <p>Olá</p>
          <p>Notificamos que <em>' . $sender_name . '</em> entrou em contato</p>
          <p>Deixou a seguinte mensagem:</p>
          <p>' . $sender_message . '</p>
          <p>Você pode entrar em contato pelo seguinte email <a href="mailto:' . $sender_email . '" class="contact">' . $sender_email . '</a></p>
    </body>
    </html>';
require_once("send_email.php");
echo "string";
?>

Firebug响应

readyState  4
responseText    "<?php echo "string"; ?>"
status  200
statusText  "parsererror"

我想知道是否需要转义那些双引号。上面写着

<meta charset="UTF-8">

尝试

<meta charset='"UTF-8'">