【发布时间】:2018-06-24 06:05:14
【问题描述】:
我尝试使用 JSON 显示我的图像,但我得到了
未捕获的语法错误:JSON 输入意外结束
作为一个错误。我尝试了很多事情,很多方法来解决它,但我失败了。我可以显示文本(来自没有图像(BLOB)的表,我对其进行了测试),但是当我尝试使用包含图像的表时出现错误。
这是我的代码:
PHP - 用于获取图像:
<?php
header("Content-Type: application/json; charset=UTF-8");
//header('Content-Type:image/jpeg');
$obj = json_decode($_GET["x"], false);
$conn = new mysqli("localhost", "abu", "aburefko159753", "btt");
$result = $conn->query("SELECT * FROM " . $obj->table . " LIMIT " . $obj->limit);
$output = array();
$output = $result->fetch_all(MYSQLI_ASSOC);
echo json_encode($output);
?>
用于显示图像的 HTML 和 JS 代码:
<script>
var obj, dbParam, xmlhttp;
obj = { "table":"bestPlaces", "limit":4 };
dbParam = JSON.stringify(obj);
xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
document.getElementById("demo").innerHTML = this.responseText;
console.log(this.responseText);
var myObj = JSON.parse(this.responseText);
document.getElementById("demo2").innerHTML = myObj[0].ID;
console.log(myObj[0].ID);
}
};
xmlhttp.open("GET", "getPlaces.php?x=" + dbParam, true);
xmlhttp.send();
</script>
<p id="test"></p>
<p id="test2"></p>
当我使用另一个没有图像的表时,相同的代码可以正常工作,输出将是:
[{"ID":"1","name":"test bez session","content":"abu test test"},
{"ID":"2","name":"test bez session","content":"abu test test"},
{"ID":"3","name":"test bez session","content":"test test 2"},
{"ID":"4","name":"test bez session","content":"abu juhu test"}
]
1
但是当我使用带有图像的表格时它会崩溃。有什么帮助吗?
【问题讨论】:
-
它因 WHAT ERROR 而崩溃
-
@RiggsFolly 我将错误消息放在问题中...未捕获的语法错误:JSON 输入意外结束
-
我不知道答案,但我猜JSON包含一个或多个图像时太大了
-
那么你推荐我用什么来代替 json?我正在尝试使用我数据库中的一些图像制作轮播(幻灯片)。你可能知道更好的方法。
标签: javascript php jquery html json