我想从数据库中获取数据并将它们写入以下引导结构:1行 - 3列,1行 - 3列,1行 - 3列。
以下引导程序结构
<div class="row">
<div class="col-sm-2">
some content
</div>
<div class="col-sm-2">
some content
</div>
<div class="col-sm-2">
some content
</div>
</div>
我无法弄清楚如何构建一个循环。被困在这个地方。
while($row = mysqli_fetch_assoc($result)) {
$counter ++;
if($counter == 1 || $counter % 3 === 0) {
echo '<div class="row">';
}
echo '<div class="col-sm-2">';
echo '<div class="row">';
echo '<p>' . $row["name"] . '</p>';
echo '</div>';
echo '<div class="row">';
echo '<p>' . $row["email"] . '</p>';
echo '</div>';
echo '<div class="row">';
echo '<p>' . $row["comment"] . '</p>';
echo '</div>';
echo '</div>';
if($counter % 3 === 0) {
echo '</div>';
}
}
答案 0 :(得分:0)
{{1}}
答案 1 :(得分:0)
$counter = 0;
while($row = mysqli_fetch_assoc($result)) {
if($counter % 3 === 0) {
echo '<div class="row">';
}
echo '<div class="col-sm-2">';
echo '<div class="row">';
echo '<p>' . $row["name"] . '</p>';
echo '</div>';
echo '<div class="row">';
echo '<p>' . $row["email"] . '</p>';
echo '</div>';
echo '<div class="row">';
echo '<p>' . $row["comment"] . '</p>';
echo '</div>';
echo '</div>';
if($counter % 3 === 2) {
echo '</div>';
}
$counter++;
}
//if last row has less then 3 items then close the outer row
if($counter % 3 !== 0) {
echo '</div>';
}
JSfiddle,包含7个项目的模拟输出
答案 2 :(得分:0)
这项任务导致发现在编写代码中的算法之前,我需要在一张纸上绘制一个方案。比测试一张纸上的输出。结果,我找到了这么简单的解决方案。
$counter = 0;
while($row = mysqli_fetch_assoc($result)) {
$counter ++;
if($counter == 1) {
echo '<div class="row">';
}
echo '<div class="col-sm-2">';
echo '<div class="row">';
echo '<p>' . $row["name"] . '</p>';
echo '</div>';
echo '<div class="row">';
echo '<p>' . $row["email"] . '</p>';
echo '</div>';
echo '<div class="row">';
echo '<p>' . $row["comment"] . '</p>';
echo '</div>';
echo '</div>';
if($counter == 3) {
echo '</div>';
$counter = 0;
}
}