我在PHP中呈现一个页面,显示了几个项目,每个项目都有许多图像。这里的问题是让脚本为每个项目呈现确切数量的图像。
我使用过嵌套循环,但这对我来说似乎没有用。在这里:
<?php
for ($k = 0; $k < $itemsnumber; $k++){
$itemresresult = mysqli_query($dbconn, "SELECT * FROM
`item_resource`
WHERE i_itemnumber = ".$k.";");
while($res = $itemresresult->fetch_assoc()){
...render images
}
}
?>
我希望它只渲染与第一个循环的k增量相关的图像,但是,它将使用i_itemnumber = 1,2等渲染所有图像。
你应该做这样的事情:
$items = [
["id"=>1, 'name' => "first item"],
["id"=>2, 'name' => "second item"],
["id"=>3, 'name' => "third item"]
];
echo '<ul>';
foreach ($items as $item){
echo '<li>' . $item['name'];
$itemresresult = mysqli_query($dbconn, "SELECT * FROM
`item_resource`
WHERE i_itemnumber = ".$item['id'].";");
while($res = $itemresresult->fetch_assoc()){
...render images
}
echo '</li>';
}
echo '</ul>';
如您所见,您需要使用相应的图像循环渲染图像。也不是我在SQL查询中使用来自$item
的ID,而不是迭代号。