簡體   English   中英

PHP在HTML中顯示MySQL表

[英]PHP show MySQL Table in HTML

我正在使用此代碼顯示完整的MySQL表:

$sql="SELECT * FROM billing ";
$rs=mysql_query($sql,$conn);
$fields_num = mysql_num_fields($rs);
echo "<table border='1'><tr>";
for($i=0; $i<$fields_num; $i++) {
    $field = mysql_fetch_field($rs);
    echo "<td>{$field->name}</td>";
}
echo "</tr>\n";
while($row = mysql_fetch_row($rs)) {
    echo "<tr>";
    echo "<td>$row[0]</td>";
    echo "<td>$row[1]</td>";
    echo "</tr>\n";
}

這顯示每個列標題,但只有2列數據

如何使它顯示所有列而不必列出每個列名/數組號?

使用mysql_fetch_array($rs)代替mysql_fetch_row($ rs),並使用上面調用的字段名稱訪問結果集$rs的每一行,這將簡化您的查詢。

只是遍歷每一行中的所有列。

$sql="SELECT * FROM billing ";
$rs=mysql_query($sql,$conn);
$fields_num = mysql_num_fields($rs);
echo "<table border='1'><tr>";
for($i=0; $i<$fields_num; $i++) {
    $field = mysql_fetch_field($rs);
    echo "<td>{$field->name}</td>";
}
echo "</tr>\n";
while($row = mysql_fetch_row($rs)) {
    echo "<tr>";
    foreach($row as $index => $data) {
       echo "<td>".$data."</td>";
    }
    echo "</tr>\n";
}
while($row = mysql_fetch_row($rs)) {
    echo "<tr>";
    for($i=0; $i<$fields_num; $i++) {
        echo "<td>{$row[$i]}</td>";
    }
    echo "</tr>\n";
}

您可以嘗試以下方法:

$sql="SELECT * FROM billing ";
$rs=mysql_query($sql,$conn);
$fields_num = mysql_num_fields($rs);
echo "<table border='1'><tr>";
for($i=0; $i<$fields_num; $i++) {
    $field = mysql_fetch_field($rs);
    echo "<td>{$field->name}</td>";
}
echo "</tr>\n";
$numrows = mysql_num_rows($rs);
while($row = mysql_fetch_row($rs)) {
    $i = 0;
    while($i < $numrows){
        echo "<tr>";
        echo "<td>".$row[$i]."</td>";
        echo "</tr>\n";
        $i++;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM