ID: 35366 Comment by: tm at nanosoft dot com dot pl Reported By: sl898 at poczta dot onet dot pl Status: Open Bug Type: InterBase related Operating System: Windows 2000/2003 PHP Version: 5CVS-2005-11-24 (snap) New Comment:
I found that after change a php.ini file from magic_quotes_runtime = On to magic_quotes_runtime = Off everything is ok, and empty fields from database are as expected. Previous Comments: ------------------------------------------------------------------------ [2005-11-24 15:45:15] sl898 at poczta dot onet dot pl Description: ------------ Functions ibase_fetch_object, ibase_fetch_row return wrong values when there is an empty string ('') in firebird table. When there is a 'null' value in the table this problem doesn't occure. PHP ver. 5.0.0 works fine, problem is in ver 5.0.4 and higher. In this example in record number 3 there is value from record number 1 instead of empty string (''). Reproduce code: --------------- CREATE TABLE test_table (test_field VARCHAR(10)) Insert 4 records into test_table rec_no|test_field ------------------ 1 | 'test1' 2 | 'test2' 3 | '' 4 | 'test4' ------------------ $sql_string = "SELECT test_field FROM test_table"; $connection = ibase_connect($database, $user, $pass); $dbo = ibase_query($connection, $sql_string); while ( $oRow = ibase_fetch_object($dbo) ) { var_dump($oRow); } Expected result: ---------------- { ["TEST_FIELD"]=> string(5) "test1" } { ["TEST_FIELD"]=> string(5) "test2" } { ["TEST_FIELD"]=> string(0) "" } { ["TEST_FIELD"]=> string(5) "test4" } Actual result: -------------- { ["TEST_FIELD"]=> string(5) "test1" } { ["TEST_FIELD"]=> string(5) "test2" } { ["TEST_FIELD"]=> string(5) "test1" } { ["TEST_FIELD"]=> string(5) "test4" } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35366&edit=1