0

MYSQL データベース内のデータを出力するためのクエリがあり、それをテーブルに表示したいと考えています。見出しとして「名前」と「ユーザーID」を使用して...現在、私が開発したコードは結果を出力しますが、代わりにテーブルの複数のインスタンスを作成し、新しい行を作成しません。

誰かが私の目標を達成するのを手伝ってくれませんか?

echo"
<table width='400' border='1'>               
<tr>
    <td>Name</td>
    <td>SystemID</td>
  </tr>
  <tr>
    <td> ".$row['FullName']." </td>
    <td> ".$row['UserID']." </td>
  </tr>
</table>";
4

7 に答える 7

2

ループの前に 配置する必要があります ( そして 、サイクルの後に配置する必要があります...<table width='400' border='1'>
<tr> <td>Name</td> <td>SystemID</td> </tr>
<HERE> while() { ... }</table>

次のようになります。

echo "
<table width='400' border='1'>
<tr>
    <td>Name</td>
    <td>SystemID</td>
  </tr>";

while(....) {
echo "               
 <tr>
    <td> ".$row['FullName']." </td>
    <td> ".$row['UserID']." </td>
  </tr>
";
}

echo "</table>";
于 2012-08-30T14:44:11.337 に答える
2

あなたが示したコードが、データベースの結果をループする何らかの while ループ内にある場合、なぜ 1 行のテーブルが大量に得られるのかが明確になるはずです。テーブル全体の出力は、ループの実行ごとに発生します。データ取得ループを開始する前に、テーブルの開始タグとヘッダー行を出力する必要があります。ループの実行ごとに行のみを出力し、ループを終了した後にテーブルの終了タグを出力します。

于 2012-08-30T14:41:30.677 に答える
2
echo"
<table width='400' border='1'>               
<tr>
    <td>Name</td>
    <td>SystemID</td>
  </tr>";

while ($row = $result->fetch_assoc()) { // or whatever your retrieval code is
  echo "<tr>
    <td> ".$row['FullName']." </td>
    <td> ".$row['UserID']." </td>
  </tr>";
}

echo "</table>";

テーブルの開始タグとヘッダーをエコーし​​、データベースの結果をループしてから、テーブルの終了タグをエコーする必要があります。

于 2012-08-30T14:41:49.270 に答える
2

テーブルはデータのループの外側で定義する必要があります。データをループして、ループごとに行を追加するだけです。

echo "<table width='400' border='1'> ";
echo "<tr>
    <td>Name</td>
    <td>SystemID</td>
  </tr>";

// Example of while loop :
   while ($row = mysql_fetch_array($results)) {
     echo"      <tr>
        <td> ".$row['FullName']." </td>
        <td> ".$row['UserID']." </td>
      </tr>";
   }

echo "</table>";
于 2012-08-30T14:41:56.623 に答える
1

http://www.siteground.com/tutorials/php-mysql/display_table_data.htm

于 2012-08-30T14:42:26.937 に答える
0

ミッションを複雑にしないでください。loop を実行する必要はありません。mysql はオプション whichi を提供しています--html。それを使用してください。

mysql --html -uroot -e "USE mydb;select * from mytable"

FullName と UserID のみを表示する場合:

mysql --html -uroot -e "USE mydb;select FullName,UserID from mytable"
于 2013-07-30T13:15:10.460 に答える
0

代わりにループ内でこれを使用してください

echo"
  <tr>
    <td> ".$row['FullName']." </td>
    <td> ".$row['UserID']." </td>
  </tr>";

テーブルの残りの部分をループに巻き付けます。

于 2012-08-30T14:41:12.303 に答える