#45491 [Opn->Bgs]: bytea values don't get escaped in pg_query_params and pg_execute
| From: | johannes@php.net | Date: | Sat, 12 Jul 2008 13:38:31 +0000 |
| Subject: | #45491 [Opn->Bgs]: bytea values don't get escaped in pg_query_params and pg_execute | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-126564@lists.php.net to get a copy of this message | ||
ID: 45491
Updated by: johannes@php.net
Reported By: php at benjaminschulz dot com
-Status: Open
+Status: Bogus
Bug Type: PostgreSQL related
Operating System: linux, darwin
PHP Version: 5.3CVS-2008-07-12 (CVS)
New Comment:
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to
report
a bug at http://bugs.php.net/how-to-report.php
pgsql expects a utf-8 string there, got something else and fails -> no
PHP issue
Previous Comments:
------------------------------------------------------------------------
[2008-07-12 08:32:25] php at benjaminschulz dot com
Description:
------------
It's not possible to pass bytea values to pg_query_params or
pg_execute. It seems like ext/pgsql does no escaping where it should.
ext/pgsql is built against libpq 8.3.1.
Reproduce code:
---------------
<?php
$conn = pg_connect(...);
pg_set_client_encoding($conn, 'UTF8');
$res = pg_query_params('SELECT $1::bytea', array("\xf6"));
var_dump(pg_fetch_array($res));
Expected result:
----------------
Some binary string :)
Actual result:
--------------
Warning: pg_query_params(): Query failed: ERROR: invalid byte sequence
for encoding "UTF8": 0xf6
HINT: This error can also happen if the byte sequence does not match
the encoding expected by the server, which is controlled by
"client_encoding". in ...
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=45491&edit=1