0

データベースを動的にクエリし、6つのテーブルを返すphp関数があります。これらの各テーブルをphp配列要素として保存し、JSON / AJAXを介して配列を返し、各テーブルを個別のページに表示したいと思います。私はこれらすべてを行うためのテストコードを書きました。テストコードはHTML文字列の配列を受け取り、それらを返します。

私が抱えている問題は、テストコードで、非常に単純な文字列を使用したことです。

$d1 = <<<END

<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>

END; 

$d2 = "<div id='#f-2'>Message 2</div>";

実際、私が持っているのは、SQLの結果をループしてHTMLテーブルを作成するためのたくさんのphpコードです。

while($row=pg_fetch_array($result, null, PGSQL_ASSOC))
  {

    if(!$written_header)
    {
      echo "<table class=\"fancy\" id=\"ticket_list_table\"><thead><tr><th>ID</th><th>Hardware Name</th><th>Serial No.</th><th>IP Address</th><th>Username</th><th>Password</th></tr></thead><tbody>";
      $written_header = true;
    }

    echo "<tr><td>",$row[id],"</td><td>",'$row[hardwarename]',"</td><td>",'$row[serialnumber]',"</td><td>",'$row[ipAddress]',"</td><td>",'$row[username]',"</td><td>",'$row[password]',"</td></tr>";  

  }

  pg_free_result($result);

  if($written_header)
  {
    // close the table body and table object
    echo "</tbody></table>";
  }
  else
  {
    echo "No results.";
  }
  echo "</div>";

このより複雑なものをPHP変数に格納して、配列要素として返すことができるようにするにはどうすればよいですか?

4

2 に答える 2

0

あなたを正しく理解しているかどうかはわかりませんが

$result = "<table>";
$result .= "<tr>";
$result .= "<trd>";

この。=表記は、前の値の最後に新しいデータを追加し続けます。

于 2010-09-14T19:39:10.347 に答える
0

これは私自身の特定の問題に対する解決策です:

  while($row=pg_fetch_array($result, null, PGSQL_ASSOC))
  {

    if(!$written_header)
    {
      $d1 = "<table class=\"fancy\" id=\"ticket_list_table\"><thead><tr><th>ID</th><th>Hardware Name</th><th>Serial No.</th><th>IP Address</th><th>Username</th><th>Password</th></tr></thead><tbody>";
      $written_header = true;
    }

    $d1 = $d1."<tr><td>$row[id]</td><td>$row[hardwarename]</td><td>$row[serialnumber]</td><td>$row[ipAddress]</td><td>$row[username]</td><td>$row[password]</td></tr>";

  }

  pg_free_result($result);

  if($written_header)
  {
    // close the table body and table object
    $d1 = $d1."</tbody></table>";
  }
  else
  {
    $d1 = $d1."No results.";
  }
于 2010-09-15T12:09:00.267 に答える