入口
 HTML/PHP 切替
 環境変数
 配列
 文字コード
 session
買物かご
 index.php
 sub.phl
 引数受取
制御構造
 if
  文字比較
  空文字列
 foreach
文字取扱
 空白文字
  trim()
mail
 mime mail
PostgreSQL
 PostgreSQL 用の関数
 関数名の変更
 単純な表を作成
 記述例
Books

PHP4 programming Apache + PHP4 + PostgreSQL | 日本語説明書

単純な表を作成

同じ機械で動いている postmaster に接続し、 hosts という database の中の oldhost という表を読んで、 その内容を表形式で表示する。
<html>
<head><title>pg_connects _exec _numrows _numfieds</title></head>
<body>
<center>
<h2>hostname</h2>
<table cellspacing=0 cellpadding=3 border=1>
<?php
        $id     = pg_connect("", "", "", "", "hosts");
        $rc     = pg_exec($id, "select * from oldhost");
        $rows   = pg_numrows($rc);
        $fields = pg_numfields($rc);
// ----  generate field names -----
        print("<tr>");
        for ($f = 0 ; $f < $fields ; $f++) { 
	  print ("<th> . pg_field_name($rc,$f) . </th>");}
        print ("</tr>");
// ---- generate each fields ------
        for($r = 0; $r < $rows; $r++){
	  print("<tr>");
	  for ($c = 0 ; $c < $fields ; $c++) { 
		print("<td> . pg_result($rc, $r, $c) . </td>");}
	  print("</tr>"); }

        pg_close($id);
?>
</table>
</center>
</body>
</html>
この手続が動くためには、 Web server が動いている権限、例えば apache nobody などから、PostgreSQL の中が見えるようになっている必要がある。

(p76) 一番安易に試すには、psql の中で

test=# GRANT SELECT ON hosts TO PUBLIC;
CHANGE
などとする。これをしておかないと、次のような字を見てしまう。
PHP Warning: pg_exec() query failed: ERROR: host_description: Permission denied.
この画面は Jeedosaquin によって表示しています。
Last Update: Sat, 07 Jun 2014 22:16:17 GMT 1.66 2008/03/08