[PHP-users 24186] Re: Oracle接続時のWarning: ociexecute(): と Warning: ocifetch(): について

Kazumasa Gotoh kgotoh @ cic-kk.co.jp
2005年 1月 21日 (金) 13:06:56 JST


From: "Iso, Toshitaka" <toshitaka.iso @ hp.com>
Date: Fri, 21 Jan 2005 12:49:40 +0900

> (1) Warning: ociexecute(): OCIStmtExecute: ORA-00936: missing expression in /var/www/html/test/hoge.php on line 37
> 	→ 「OCIExecute($sql_RANK);」の箇所
     (snip)
>         // SQL文のparse
>         $sql_RANK = OCIParse($conn,"select * from rank where NO=" . $no . "and ID='" . $id . "'");

同様のフォロー多数かとも思いますが、上記のコードだと and の前にスペースが
ないので、無効な SQL になっているのではないですか?

OCIParse はクエリーが有効な場合にはステートメント ID を返しますが、
無効な場合には FALSE を返します。
リターンコードのチェックはちゃんと行った方がよいでしょう。

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
(株) セントラル情報センター
                             後藤和政    kgotoh @ cic-kk.co.jp


PHP-users メーリングリストの案内