在数据库中的每 3 个图像之后在 table 中添加一个新行
Adding a new row in a table after every 3 images from database
我有一个图片库,其中的图片通过 MySQL 数据库上传并显示在我的网站上 table。问题是,图像被插入到一行中。我需要有人 更改我的脚本 以在每 3 列(图像)后添加一个新行。
我之前问过这个问题,但删除了线程以便我可以重新开始。我做了很多研究并学到了一些东西,但我不知道如何编写脚本来满足我的需要。
脚本:
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id ASC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
if (mysql_num_rows($sql_result)>0) {
while ($row = mysql_fetch_assoc($sql_result)) {
?>
<tr>
<td><a href="<?php echo $row["link"]; ?>" target="_blank"><?php echo $row["img"]; ?></a><br>Size: <?php echo $row["size"]; ?><br>Views: <?php echo $row["clicks"]; ?></td>
</tr>
<?php
}
} else {
?>
<tr><td colspan="3">No results found.</td>
<?php
}
?>
</table>
您需要打开和关闭标签,而不是每次迭代,而是每 3 次迭代。生成的代码可能如下所示:
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id ASC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
if (mysql_num_rows($sql_result)>0) {
$i=0;
while ($row = mysql_fetch_assoc($sql_result)) {
if ($i++ % 3 == 0) echo "<tr>";
?>
<td><a href="<?php echo $row["link"]; ?>" target="_blank"><?php echo $row["img"]; ?></a><br>Size: <?php echo $row["size"]; ?><br>Views: <?php echo $row["clicks"]; ?></td>
<?php
if ($i % 3 == 0) echo "</tr>";
?>
<?php
}
if ($i % 3 != 0) echo "</tr>";
} else {
?>
<tr><td colspan="3">No results found.</td>
<?php
}
?>
</table>
你就是有这个答案的人 if ($i % 3 == 0) echo "";是救世主。我在 JavaScript 中尝试了很多。但没有忘记我可以在后端执行此操作。
我有一个图片库,其中的图片通过 MySQL 数据库上传并显示在我的网站上 table。问题是,图像被插入到一行中。我需要有人 更改我的脚本 以在每 3 列(图像)后添加一个新行。
我之前问过这个问题,但删除了线程以便我可以重新开始。我做了很多研究并学到了一些东西,但我不知道如何编写脚本来满足我的需要。
脚本:
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id ASC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
if (mysql_num_rows($sql_result)>0) {
while ($row = mysql_fetch_assoc($sql_result)) {
?>
<tr>
<td><a href="<?php echo $row["link"]; ?>" target="_blank"><?php echo $row["img"]; ?></a><br>Size: <?php echo $row["size"]; ?><br>Views: <?php echo $row["clicks"]; ?></td>
</tr>
<?php
}
} else {
?>
<tr><td colspan="3">No results found.</td>
<?php
}
?>
</table>
您需要打开和关闭标签,而不是每次迭代,而是每 3 次迭代。生成的代码可能如下所示:
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<?php
$sql = "SELECT * FROM ".$SETTINGS["data_table"]." ORDER BY id ASC";
$sql_result = mysql_query ($sql, $connection ) or die ('request "Could not execute SQL query" '.$sql);
if (mysql_num_rows($sql_result)>0) {
$i=0;
while ($row = mysql_fetch_assoc($sql_result)) {
if ($i++ % 3 == 0) echo "<tr>";
?>
<td><a href="<?php echo $row["link"]; ?>" target="_blank"><?php echo $row["img"]; ?></a><br>Size: <?php echo $row["size"]; ?><br>Views: <?php echo $row["clicks"]; ?></td>
<?php
if ($i % 3 == 0) echo "</tr>";
?>
<?php
}
if ($i % 3 != 0) echo "</tr>";
} else {
?>
<tr><td colspan="3">No results found.</td>
<?php
}
?>
</table>
你就是有这个答案的人 if ($i % 3 == 0) echo "";是救世主。我在 JavaScript 中尝试了很多。但没有忘记我可以在后端执行此操作。