プロが教えるわが家の防犯対策術!

PHPにてデータの入っていないテーブルに対して”pg_result”の処理をすると
”Warning: 0 is not a PostgresSQL result index”という
警告文が出てしまいます。
これを何とか回避したいのです。
また、最悪警告文のみ(Error文ではなく)表示させないようにできればいいのですが方法が分かりません。
お分かりになられる方おりましたら、よろしくご教授ください。

環境:
RedhatLinux6.2J
apache-1.3.12-0jp1
php-3.0.15_i18n_ja-0vl2
postgresql-7.0.2-2.i386

A 回答 (2件)

>一つのフィールドのみ空の場合には上記の処理では行数を拾ってしまい


>データのないフィールドをpg_resultするとエラーになってしまうのです。

それは変ですね。ひょっとして設定でそういう風にもなるのかもしれません。

ちなみにちょっと調べたところ、エラー表示を抑制するには、関数の前に@をつければいいみたいです>PHP
@pg_result
という形ですね。試してみてください。
    • good
    • 0
この回答へのお礼

>ちなみにちょっと調べたところ、エラー表示を抑制するには、関数の前に@をつければいいみたいです>PHP
>@pg_result
>という形ですね。試してみてください。

すばらしい!そんな方法があったのですね。
早速試させていただきます。
貴重な情報ありがとうございます。

お礼日時:2001/04/09 21:25

細かい処理が分からないので、はずしていたらごめんなさい。



pg_execした後に、pg_NumRowsでテーブルの件数を確認し、その結果で処理分岐(件数がゼロなら、pg_resultしない)すればいいのではないでしょうか。

前に作った簡単なコードは、それで動いていました。
    • good
    • 0
この回答へのお礼

レスありがとうございます。
>pg_execした後に、pg_NumRowsでテーブルの件数を確認し、その結果で処理分岐(件数がゼロなら、pg_resultしない)すればいいのではないでしょうか。

そうなんです、テーブルのデータがすべて空なら問題ないのですが
一つのフィールドのみ空の場合には上記の処理では行数を拾ってしまい
データのないフィールドをpg_resultするとエラーになってしまうのです。

質問のしかたが分かりずらくすみません。
引き続きご教授お願いいたします。

お礼日時:2001/04/09 18:55

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!