我想循环浏览我的数据集。我想要5行8个单元格。我似乎不知道该怎么做。我的代码只是重复数据集中的每一项。
我需要做类似$row〔'URL〕〔0〕的操作吗
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
echo "</tr>";
}
echo "</table>";
首先,您应该限制sql查询中的结果集,并切换到PDO或mysqli,因为mysql_*
函数已弃用。
然后你可以做一些类似的事情:
echo '<table><tr>';
$count = 0;
while (...)
{
$count++;
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
if ($count % 5 === 0)
{
echo '</tr><tr>';
}
}
echo ' </tr></table>';
您可能需要稍微整理一下,以完成最后一行并避免最后出现空行,但这只是一个总体想法。
已尝试:
echo "<tr>";
while($row = mysql_fetch_array($result))
{
echo "<td><a href='" . $row['URL'] . "'><img src='" . $row['IMG'] . "'/></a></td>";
}
echo "</tr>";
echo "</table>";
说明:mysql_fetch_array
为每个周期返回一个结果。因此,您可以为每个循环打印一次结果,而不是在一个循环中打印每个循环的结果。