ajax Json returning null


ajax Json returning null

我有一个简单的ajax调用php json响应。我已经写过很多次了,但从来没有遇到过这个问题。

Ajax发送"id"参数,PHP接收它,完成它的工作并发送回json响应,这就是问题开始的地方。其中一个参数总是为空,原因我似乎找不到。我已经手动测试了php,它返回了这两个值。我已经检查了ajax,看看它是否恢复了id参数,它恢复了。所以问题是在json响应被发送的一些地方,它被jquery ajax接收。

 // This gets the paramaters from the url
 theParams = parseURLParams(document.URL);
 // ^^ it returns an id, like this  {"id":"4a17bcb93fe3fac3978671a66959d902"}
 $.ajax({
    url: 'viewer_code.php',
    type: 'GET',
    dataType: 'json',
    data: {id: theParams.id},
    success: function(dataImg) { 
    alert(dataImg.imgUrl);
    }
});

和PHP(一切似乎都很好&都要消毒)

    $id = $_GET['id'];
    $q = "SELECT * FROM `images` WHERE id = '$id'";
    if(!($result_set = mysql_query($q))) die(mysql_error());
        $row = mysql_fetch_array($result_set);
        $thumb = $row['thumb'];
        $image = $row['image'];
        header('Content-Type: application/json');
        echo json_encode(array("imgUrl" => $image, "id" => $id));

手动测试PHP时,它返回:{"imgUrl":"pictures/75de7c1c30d956113f937a8e685f7e50.jpg","id":"4a17bcb93fe3fac3978671a66959d902"}

imgUrl总是返回null,有人知道为什么会发生这种情况吗?哦,我已经尝试过从GET切换到POST,正如之前的问题所建议的那样,但它没有任何区别。

提前感谢任何帮助,干杯伙计们:)

您是否尝试使用id: 1代替id: theParams.id,我有一个大问题,试图处理不正确的json变量。

另一方面,我正在编写类似的代码,但没有
header('Content-Type: application/json');

你有没有尝试在你的php文件echo json_encode(array("imgUrl" => 'image.jpg', "id" => '1'));取决于这些测试也许我可以帮助你更多