我在SQL中有一个People表,我正在我的网站上打印它的列(每列都是一个人的名字)。
我希望这些名字像表格一样排列在一个网格中,但垂直高度不受限制(这将取决于表格中有多少名字),但水平宽度有限,最多有4个名字。通过下面的代码,所有内容都打印在一个包含1列和多行的简单表中。
我怎么能这么做?谢谢
<?php
$new = mysql_query("SHOW COLUMNS FROM People");
while($row = mysql_fetch_array($new)){
print( " <tr> <td height='40px'><p class='scrollviewed'> <b> " . $row['Field'] . "</b></p></td></tr>");
}
这是未经测试的,但这个想法应该是合理的。基本上,你想每4项就有一个新的TR
,无限期。。。
尝试类似以下内容:
$cnt = 0;
$cols = 4;
$output = "<table><tr>";
while($row = mysql_fetch_array($new)){
$output .= "<td height='40px'>{$row['Field']}</td>";
$cnt++;
if($cnt % $cols == 0)
{ $output .= "</tr><tr>"; }
}
$output .= "</tr></table>";
echo $output;
首先,开始使用PDO。它要好得多,mysql已被弃用。
你可以这样查询:
$new = $db->query("SHOW COLUMNS FROM People");
创建你的桌面。然后你可以使用这样的东西:
<?php
while($row = $new->fetch(PDO::FETCH_ASSOC)){
?>
<tr>
<td height='40px'><p class='scrollviewed'><?= $row['FIELD'] ?></p></td>
在你放置了所有的td之后,用结束它
<?php } ?>
</tr>
等等…
//也许您可以从引导中使用'col-md-3'
echo '<div class="row">';
while($row = mysql_fetch_array($new)){
echo '<div class="col-md-3">'. $row['name'] .'</div>';
}
echo '</div>';