0

我有一个 ajax get 脚本,无论我的数组大小如何,它都能在我的本地主机上完美运行。不幸的是,当我在 Godaddy 主机服务器上运行相同的脚本时,它返回一个空字符串作为响应。如果将我的 php 数组大小减少到几行,它就可以工作。

我做了一些研究并在此链接上应用了修复程序...当 GoDaddy 主机上的 JSON 内容超过 1MB 时,ajax GET 失败 ...但我仍然得到相同的 EMPTY STRING。任何建议将不胜感激。提前致谢。

到目前为止,这是我的代码...

PHP

功能产品颜色数据($con){

$sql = mysqli_query($con,"SELECT * FROM `colors`");
$data = array();

while($row=mysqli_fetch_assoc($sql)) {
    $data[] = $row;
}

return $data;

}

header("内容类型:应用程序/json"); echo json_encode(product_colors_data($con));

查询

var row_num = $("#table > tbody > tr").length;

$.ajax({
    url: 'getcolors.php',
    dataType: 'json',
    timeout: 30000,
    data: {'row_num':row_num}, // Setting the data attribute of ajax with file_data
    type: 'GET',
    success: function(response) {
        //alert(response);
        console.log(response);
    },
    error: function (xhr, status, error) {
        console.log(xhr.responseText);
        console.log(status);
        console.log(error);                        
    }

}); 

控制台日志

解析器错误

4

1 回答 1

0

我找到了解决问题的方法。它可能并不理想,但它可以完成工作。我将“颜色”表转换为 json 文件并从那里继续。这是我的代码...

function getArray(){
    return $.getJSON('colors.json');
}

getArray().done(function(json) {
    // now you can use json
    console.log(json);
});
于 2020-09-26T08:44:41.480 回答