我有以下代码,显示数据库中producs表中添加的项目,我希望每10个项目创建一个新数组,这样它就不会是一个很长的项目列表。
$dynamicList = "";
$sql = mysql_query("SELECT * FROM products ORDER BY date_added DESC");
$productCount = mysql_num_rows($sql); // count the output amount
if ($productCount > 0) {
while($row = mysql_fetch_array($sql)){
$id = $row["id"];
$product_name = $row["product_name"];
$price = $row["price"];
$date_added = strftime("%b %d, %Y", strtotime($row["date_added"]));
$dynamicList .= '<table width="100%" border="0" cellspacing="0" cellpadding="6">
<tr>
<td width="10%" valign="top"><a href="product.php?id=' . $id . '"><img style="border:#666 1px solid;" src="inventory_images/' . $id . '.jpeg" alt="' . $product_name . '" width="93" height="102" border="1" /></a></td>
<td width="90%" valign="top">' . $product_name . '<br />
€' . $price . '<br />
<a class="provoli" href="product.php?id=' . $id . '">Προβολή Λεπτομεριών</a></td>
</tr>
</table>';
答案 0 :(得分:0)
你的代码风格可能会使用一些工作,因为它不是很漂亮,但是,为了使这个工作,你可以尝试将你的列表放在一个数组中。
这需要两个步骤,第一步是保留索引的记录。第二个是将值添加到新数组中。
$index = 0;
while(<your condition>) {
$index++;
<more code>
$list[((int)$index/10)] .= <string>
}
更好的方法是在使用所有项目打印数组时实现此目的。但我不知道你是如何进一步实现的。