【发布时间】:2015-08-09 08:05:22
【问题描述】:
总体而言,我想将数据库表“产品”的所有元素作为按钮回显在一行中,并且对于每 10 个元素,应该实现一个换行。每一行都应该被一个特定的 () 包围。
我已经打印了我一直在使用的代码:
products_backend.php:
$stmt = $db->prepare("SELECT * FROM products");
$stmt->execute();
$count = $stmt->rowCount();
if($count > 1){
$table_row = $stmt->fetchAll();
$i = 0;
foreach($table_row as $data) {
$i++;
?>
<div class="col-md-1 cash_register pants">
<button class="table_add" value="Bukser">
<h4><?php echo $data['product_name']; ?></h4>
</button>
</div>
<?php
if ($i%10 == 0):
echo "<br>";
endif;
}
}
然后我有“products.php 页面”,其中显示了提取的数据:
<div class="container-fluid">
<section class="wrapper">
<div class="row">
<div class="row-eq-height">
<?php require("products_backend.php"); ?>
</div>
</div>
</section>
</div>
但是这个输出是数据库中的所有产品打印在一行上,每 10 行没有任何换行:
图像显示了输出,但是由于窗口大小,只显示了 11 个产品,但我一直在窗口外。
总而言之,我希望输出为每打印 10 个产品插入一个换行符,并且每一行都应该在 div 内,如下面的操作图片所示:(注意,为了创建图片,我有只是复制了行行的输出以创建第二行,因此我不希望第二行的输出与第一行相同)
那么我在上面的代码中做错了什么?
【问题讨论】:
-
每次都尝试回显
$i和$i % 10,而不是产品名称。看看会发生什么。 -
它应该算:1-2-3-4-5-6-7-8-9 0-1 等等。