我需要将每个类别的书籍数量放在span标记内,在其类别旁边。 我想用一个Ajax做到这一点,以得到Categories,对于每个我都叫另一个Ajax,将category的ID作为参数发送。它告诉我该类别中有多少本书。 (分离的PHP文件)我认为此方法可以节省使用jquery选择器等的时间。 (也许我错了,因为我还是新手) 但是某些地方似乎出了问题。
“ ETIQUETA_CAT” =类别名称, “ NUMERO_CAT” = ID,它是从1开始的自动增量 垃圾邮件中的“数据”应 作为额外的信息,我无法修改数据库。
我确实成功获得了类别并将其放在网络中。现在,我将两个ajax进行了一些更改合并,但是使用此代码我什至无法获得类别。
我测试了两个SQL语句,它们都可以正常工作。也许php代码中引用Ajax的东西是错误的。
$.post("php/categorias.php", function(data, estado) {
if (estado == "success"){
for (var i in data) {
$.post("php/cantidad_libros_cat.php", {
"num_cat": data[i].NUMERO_CAT
}, function(data, estado) {
if (estado == "success"){
var li = $('<li id="categoria" class="nav-item"><a
href="#" id="'+data[i].NUMERO_CAT+'" class="nav-link d-flex align-items-
center justify-content-between"><span>'+data[i].ETIQUETA_CAT+'</span><span
class="badge badge-secondary" id="cantidad_libros">'+data+'</span></a>');
$('#categorias_wrapper').append(li);
}
});
}
}
});
我在哪里获取数量的PHP:
$cat = $_POST['num_cat'];
$sql = "SELECT count(*) as CANTIDAD FROM libros WHERE CATEGORIA=$cat";
$res = mysqli_query($conexion,$sql);
if (!$res) die ($conexion);
if ($fila = $res->fetch_object()) {
$datos = $fila->CANTIDAD;
}
header("Content-Type: application/json");
echo json_encode($datos);
mysqli_close($conexion);