phpmyadmin
图片
index.php文件
$id = '8';
$idr = $row['id']; echo 'id-'.$id.' : ';
for ($i = 0; $i <= $id; $i++) {
$sql="SELECT * FROM menu WHERE parent='$i' ";
$result = mysqli_query($db,$sql);
$slug = $row['slug']; echo $slug; echo '/';
}
if ( !empty ($id) ) { echo '-No Data-'; }我想显示如下所示的输出:
id-8 : g/h
id-6 : a/b/c/d/e/f
id-4 : a/b/c/d
id-1 : a
id-7 : g
id-10 : -No Data-发布于 2020-04-18 20:35:31
不要在for-loop中执行多个SQL查询!效率很低。而是形成一个单一的SQL查询。类似于:
$sql = "SELECT
parent,
GROUP_CONCAT(
DISTINCT slug ->
ORDER BY slug ASC
SEPARATOR '/'
) as slugs
FROM
menu
WHERE
parent <= " . $id . "
GROUP BY
parent;"然后按您的意愿格式化结果。
https://stackoverflow.com/questions/61301386
复制相似问题