PHP 4.0 Bug #5172: conversion of hex syskeys in prepared statements
| From: | k dot kleist at mediatransfer dot de | Date: | Wed, 21 Jun 2000 14:31:31 +0000 |
| Subject: | PHP 4.0 Bug #5172: conversion of hex syskeys in prepared statements | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-22153@lists.php.net to get a copy of this message | ||
From: k.kleist@mediatransfer.de
Operating system: linux
PHP version: 4.0.0 Release
PHP Bug Type: Adabas-D related
Bug description: conversion of hex syskeys in prepared statements
The conversion of an Adabas-D syskey in prepared statements don't work since php4.0RC1.
The following code discribes the problem:
$syskey = "00000000005A59AA"; // hex representation of an char(8)byte syskey
$query = "insert into table (id) values ( ?)";
$pre = odbc_prepare($conn, $query);
$data[0] = $syskey;
$result = odbc_execute($pre, $data);
The odbc_execute command will produce the following error:
source: [SOFTWARE AG][ODBCLIB A][ADABAS]
message: INPUT STRING VARIABLE TOO LONG.
String data, right truncated
error-code: 743
State: 01004
When I'm inserting a substring of the key ($data[0] = substr($syskey, 8) it works, but it
isn't the same key!!!