Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:22575 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 86476 invoked by uid 1010); 25 Mar 2006 08:47:34 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 86461 invoked from network); 25 Mar 2006 08:47:34 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 25 Mar 2006 08:47:34 -0000 X-Host-Fingerprint: 219.166.150.11 mx1.es-i.jp Linux 2.4 w/o timestamps Received: from ([219.166.150.11:44884] helo=mx1.es-i.jp) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 64/D3-11806-4A305244 for ; Sat, 25 Mar 2006 03:47:33 -0500 Received: (qmail 24376 invoked by uid 501); 25 Mar 2006 08:47:28 -0000 Received: from yohgaki@ohgaki.net by mx1.es-i.jp by uid 401 with qmail-scanner-1.20 (clamscan: 0.65. spamassassin: 2.60. Clear:RC:1(192.168.100.210):. Processed in 0.014229 secs); 25 Mar 2006 08:47:28 -0000 X-Qmail-Scanner-Mail-From: yohgaki@ohgaki.net via mx1.es-i.jp X-Qmail-Scanner: 1.20 (Clear:RC:1(192.168.100.210):. Processed in 0.014229 secs) Received: from unknown (HELO ?127.0.0.1?) (192.168.100.210) by mx1.es-i.jp with SMTP; 25 Mar 2006 08:47:27 -0000 Message-ID: <4425040E.60402@ohgaki.net> Date: Sat, 25 Mar 2006 17:49:18 +0900 User-Agent: Thunderbird 1.5 (Windows/20051201) MIME-Version: 1.0 To: internals@lists.php.net X-Enigmail-Version: 0.94.0.0 Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit Subject: pg_execute error From: yohgaki@ohgaki.net (Yasuo Ohgaki) Hi. Current pgsql.c supports prepared statement, but pg_execute() will raise E_WARNING if query plan is not prepared yet. This is annoying when database connection is persistent under web environment. I would like to do something like if (!pg_execute($db, 'myquery', array()) { pg_prepare($db, 'myquery', 'SQL'); pg_execute($db, 'myquery', array(); } WITHOUT raising any error, since @ operator does not work well with error handler. (i.e. need special handling for pg_execute) There are 4 options: 1) just ignore errors on pg_execute(). errors can be identified by return status anyway. 2) add pg_is_prepared() 3) add bool parameter to pg_execute() e.g. pg_execute(resource connection, string stmtname, array params, bool ignore_error) 4) ignore pg_execute() error if params is null array. Any comments? -- Yasuo Ohgaki