我想创建一个具有两列的名称表,其中的名称是从数据库中获取的,但是我不知道如何..我需要帮助。
姓名:詹姆斯,约翰,保罗,彼得
这是我的代码:
<?php $con = mysql_connect("localhost","root",""); if(!$con){ echo "Unable to connect DB"; }else{ $db = mysql_select_db("persons",$con); echo "Connected"; } echo "<table border='1'>"; $count = 0; $sql = "SELECT * FROM tbl_names"; $q = mysql_query($sql); while($res = mysql_fetch_array($q)){ $count++; echo "<tr>"; for($i=1;$i<=2;$i++){ echo "<td>{$res['id']}{$res['title']}</td>"; } echo "</tr>"; } echo "</table>"; ?>
我希望输出是这样的:
+-------+-------+ | James | John | +-------+-------+ | Paul | Peter | +-------+-------+
但是我的代码返回:
+-------+-------+ | James | Jame | +-------+-------+ | John | John | +-------+-------+ | Paul | Paul | +-------+-------+ | Peter | Peter | +-------+-------+
我需要你的帮助。
好吧,如果没有关系并且该表仅用于布局:
echo '<div class="container">'; while($res = mysql_fetch_array($q)){ echo '<div class="item">'. $res['id'] . $res['title'] . '</div>'; } echo '</div>';
并在CSS中:
.container { width: 400px; float: left; } .container .item { width: 50%; float: left; height: someFixedHeight; } // or 200px
无论如何,我倾向于只将表用于显示实际表,并避免将它们用于布局。您可以使用div进行任何操作(或者在这种情况下,您也可以使用ul和li。当然这不是必须的,但通常它需要更少的HTML;对于SEO,需要考虑html内容比率。如果要固定高度,可以像上面的td / tr示例一样包装每一行。