#28314 [Bgs]: sybase-ct's MSSQL_ASSOC not defined
| From: | iliaa@php.net | Date: | Fri, 07 May 2004 16:02:51 +0000 |
| Subject: | #28314 [Bgs]: sybase-ct's MSSQL_ASSOC not defined | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-59360@lists.php.net to get a copy of this message | ||
ID: 28314
Updated by: iliaa@php.net
Reported By: adamh at densi dot com
Status: Bogus
Bug Type: Sybase-ct (ctlib) related
Operating System: Linux
PHP Version: 4.3.4
New Comment:
The MSSQL_ASSOC constant is ONLY defined by the mssql
extension. The sybase extension does not define this
constant because sybase_fetch_array() (on which
mssql_fetch_array()) is based on in sybase* extension does
not support this feature. You should instead be using the
sybase_fetch_assoc() function.
Previous Comments:
------------------------------------------------------------------------
[2004-05-07 17:57:43] adamh at densi dot com
I respectfully disagree. Sybase_ct gives access to the
mssql_fetch_array() function and yet the function does *not* follow the
documentation. This is obviously a bug in sybase_ct!
php -m does not show mssql; however, it does show sybase_ct. And
mssql_fetch_array() is defined and works... but not the way it is
supposed to.
------------------------------------------------------------------------
[2004-05-07 17:47:39] iliaa@php.net
Sorry, but your problem does not imply a bug in PHP itself. For a
list of more appropriate places to ask for help using PHP, please
visit http://www.php.net/support.php as this bug system
is not the
appropriate forum for asking support questions.
Thank you for your interest in PHP.
Sounds like you don't actually load the sybase extensions.
Make sure that php -m shows "mssql".
------------------------------------------------------------------------
[2004-05-07 16:11:41] adamh at densi dot com
Description:
------------
From PEAR's DB.php:
$ar = @mssql_fetch_array($result, MSSQL_ASSOC);
According to the documentation, this should work. On Windows, it does.
However, when using the Sybase CT library (for example, apt-get install
php4-sybase on Debian), this line will fail because MSSQL_ASSOC isn't
defined.
Reproduce code:
---------------
<?php
print MSSQL_ASSOC . "\n";
?>
Expected result:
----------------
0
Actual result:
--------------
PHP Notice: Use of undefined constant MSSQL_ASSOC - assumed
'MSSQL_ASSOC' in /home/adam/t.php on line 3
Notice: Use of undefined constant MSSQL_ASSOC - assumed 'MSSQL_ASSOC'
in /home/adam/t.php on line 3
MSSQL_ASSOC
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=28314&edit=1