不要将记录从数据库输出到 Varchar 类型。我通过 AJAX 向数据库发送请求,作为响应,我得到一个空请求,但如果我选择并注释掉某些字段,我最终会得到正确的响应。
JS:
$.ajax({
type: "POST",
url: "/php/loadalcars.php",
dataType: "text",
cache: false,
success: function (resp) {
console.log(resp);
},
error:function(data){
console.log('error');
console.log(data);
}
});
PHP:
<?php
if ($_SERVER['REQUEST_METHOD'] === "POST") {
$link = mysqli_connect("localhost",
"*****","*********","**********","3306");
if (!$link) {
echo "Ошибка: Невозможно установить соединение с MySQL." . PHP_EOL;
echo "Код ошибки errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Текст ошибки error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
$sql = "SELECT id,mark,model,mile,price,describeru,img1 FROM cars LIMIT 9";
$result = mysqli_query($link,$sql);
$res = array();
while($row = mysqli_fetch_assoc($result)){
$res[] = $row;
}
echo json_encode($res);
}
?>
如果来自:
$sql = "SELECT id,mark,model,mile,price,describeru,img1 FROM cars LIMIT 9";
describeru - 如果我删除它,我会得到答案!
数据库结构:
typemenu varchar(50) utf8_general_ci
mark varchar(50) utf8_general_ci
model varchar(50) utf8_general_ci
year int(4)
mile int(15)
volume varchar(50) utf8_general_ci
**describeru varchar(8000) utf8_general_ci**
使用 TEXT 代替 VARCHAR(8000)