PHP 表 : I'm trying to create new row for every mysql table rows in my website

标签 php mysql html loops

基本上,我在 1 行上从 mysql 中检索了数据,并使它看起来像一个带有边框和内容的表,但我希望它对 mysql 表上的每一行都重复。这是我到目前为止使用的以下代码:

while($info = mysql_fetch_array( $data )) 
 { 
 echo "<table width='1000' cellpadding='10' cellspacing='5' border='1'>"; 

 echo "<tr>


    <td><center><b>".$info['id']."</td></center></b>"."<td><center><b>".$info['username']."</td></center></b>"."<td><center><b>".$info['kills']."</td></center></b>"."<td><center><b>".$info['deaths']."</td></center></b>"."<td><center><b>".$info['ratio']."</td></center></b></tr>"; 

 echo "</table>"; 
 } 

更新:

 echo "<table width='1000' cellpadding='10' cellspacing='5' border='1'>"; 
 while($info = mysql_fetch_array( $data )) 
 { 
 echo "<tr> 
    <td><center><b>".$info['id']."</td></center></b>"."<td><center><b>".$info['username']."</td></center></b>"."<td><center><b>".$info['kills']."</td></center></b>"."<td><center><b>".$info['deaths']."</td></center></b>"."<td><center><b>".$info['ratio']."</td></center></b></tr>"; 

 } 
 echo "</table>"; 

最佳答案

您希望表标记位于获取数据行的循环之外:

echo "<table width='1000' cellpadding='10' cellspacing='5' border='1'>"; 
while($info = mysql_fetch_array( $data )) 
{ 
    echo "<tr>
    <td><center><b>".$info['id']."</td></center></b>"."<td><center><b>".$info['username']."</td></center></b>"."<td><center><b>".$info['kills']."</td></center></b>"."<td><center><b>".$info['deaths']."</td></center></b>"."<td><center><b>".$info['ratio']."</td></center></b></tr>"; 
} 
echo "</table>"; 

由于您是 PHP 的新手,我可能应该进一步扩展它:

您的代码现在将回显表开始标记:

<table width='1000' cellpadding='10' cellspacing='5' border='1'>

然后进入 while 循环并回显它找到的所有行:

<tr><td><center><b>Something1></b></td></tr> // shortened for example.
<tr><td><center><b>Something2></b></td></tr>
<tr><td><center><b>Something3></b></td></tr>
<tr><td><center><b>Something4></b></td></tr>

然后当它存在循环时,它会输出表格的结束标签:

</table>

您之前所做的是为每一行数据输出一个表格。为了将来引用,最好查看您的源代码以了解正在发生的事情。

编辑:当我查看您的代码注释时,我将其格式化得更整洁以查看发生了什么,您可能希望采用以下格式使您的代码更易于阅读:

echo "<table width='1000' cellpadding='10' cellspacing='5' border='1'>"; 
while($info = mysql_fetch_array( $data )) 
{ 
    echo "<tr> 
        <td><center><b>".$info['id']."</b></center></td>
        <td><center><b>".$info['user‌​name']."</b></center></td>
        <td><center><b>".$info['kills']."</b></center></td>
        <td><center><b>".$info['deaths']."</b></center></td>
        <td><center><b>".$info['‌​ratio']."</b></center></td>
        </tr>"; 
} 
echo "</table>";

关于PHP 表 : I'm trying to create new row for every mysql table rows in my website,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12327096/

相关文章:

session - session_register()有什么问题?

php - 将perl关联数组转换为JSON并在PHP中读取

Mysql查询除

jquery - jquery函数是如何调用的?

javascript - 如何使用javascript删除表中的特定行?

javascript - 单击其他菜单项时隐藏当前子菜单

php - PHP文本框为空

php - Codeigniter 中的 session 变量不起作用

php pdo使用变量显示mysql查询的输出

php - 在 php 中禁用 mysql 自动提交不起作用