0

ループを介して表に表示される PDO 結果を取得しようとしています。ただし現在は白いページを表示しているだけです。何が欠けているかについて何か提案はありますか?またはなぜページが空白なのですか?

<?php

try {  $conn = new PDO("pgsql:host=localhost port=5432 dbname=riverflies_gis", "opengeo", "opengeo");
 echo "PDO connection object created";
 echo "<br>";
}
catch(PDOException $e) {
  echo $e->getMessage();
}

  $sql  = "SELECT admin_name, adminuser_id, group_id FROM adminuser_tbl";
  $stmt = $conn->prepare($sql);
  $stmt->execute();
  $data = $stmt->fetchAll();
?>

        <table border='1' cellpadding='10'>
        <tr>
        <th>ID</th>
        <th>adminuser</th>
        <th>group_id</th>
        <th></th>
       </tr>

<?php foreach ($data as $row): ?>
<tr>
<td><?=$row['adminuser_id']?></td>
<td><?=$row['admin_name']?></td>
<td><?=$row['group_id']?></td>
</tr>
<?php endforeach ?>
</table>
4

1 に答える 1

1

データベース操作とHTML出力を混在させないでください。

PDOは特に適しています。最初にデータを取得します。

$sql  = "SELECT admin_name, adminuser_id, group_id FROM adminuser_tbl";
$stmt = $conn->prepare($sql);
$stmt->execute();
$data = $stmt->fetchAll();

そしてそれをテンプレートに出力します:

<table border='1' cellpadding='10'>
 <tr>
  <th>ID</th>
  <th>First Name</th>
  <th>Last Name</th>
  <th></th>
  <th></th>
 </tr>
<? foreach ($data as $row): ?>
 <tr>
  <td><?=$row['id']?></td>
  <td><?=$row['firstname']?></td>
  and so on
 </tr>
<? endforeach ?>
</table>

出力コードがどれだけ素晴らしくきれいかを確認してください

于 2013-08-07T13:11:01.723 に答える