Ajax错误:“意外的输入结束”

时间:2014-02-05 15:01:50

标签: php jquery ajax

我正在编写代码来测试AJAX图像和数据上传。但是,Ajax似乎返回一个错误,指出输入无效:

  

语法错误:意外的输入结束

脚本和HTML如下

<input type="file" name="vdofile" id="file" />
<input type="text" id="name" />

<button id="send">Send</button>
$("#send").click(function(){

    var form = new FormData();

    form.append('vdofile',$("#file").prop("files")[0]);
    form.append('name', $("#name").val());

    $.ajax({
        url: 'upload.php',
        type: "POST",
        data: form,
        dataType: 'json',
        contentType: false,
        processData: false,

        success: function(data)
        {
            alert(data.message);
        },       
        error: function(xhr, status, error)
        {
            alert('An error occured.. ' + xhr.responseText + '..' + error );
        }

    });// ajax
}); // function

测试PHP如下:

header("Content-Type: application/json");

if(isset($_FILES['vdofile']) && isset($_POST['name']))
{
    $result = array(
        'message' => 'both data and file received'
    );
}
else {
    $result = array(
        'message' => 'one of parameter missing'
    );
}
return json_encode($result);

1 个答案:

答案 0 :(得分:9)

您的PHP返回空响应。 return不会打印任何内容。

print json_encode($result);

应该更好。