ID:               32531
 Comment by:       frodelangvik at hotmail dot com
 Reported By:      daniel dot beet at accuratesoftware dot com
 Status:           Open
 Bug Type:         Sybase-ct (ctlib) related
 Operating System: Windows
 PHP Version:      4.3.11
 New Comment:

Removed the current ALIAS handling and insert the following, and the
compile the file again.

#ifdef PHP_WIN32
        function_entry sybase_functions[] = {
                PHP_FE(sybase_connect, NULL)
                PHP_FE(sybase_pconnect, NULL)
                PHP_FE(sybase_close, NULL)
                PHP_FE(sybase_select_db, NULL)
                PHP_FE(sybase_query, NULL)
                PHP_FE(sybase_unbuffered_query, NULL)
                PHP_FE(sybase_free_result, NULL)
                PHP_FE(sybase_get_last_message, NULL)
                PHP_FE(sybase_num_rows, NULL)
                PHP_FE(sybase_num_fields, NULL)
                PHP_FE(sybase_fetch_row, NULL)
                PHP_FE(sybase_fetch_array, NULL)
                PHP_FE(sybase_fetch_assoc, NULL)
                PHP_FE(sybase_fetch_object, NULL)
                PHP_FE(sybase_data_seek, NULL)
                PHP_FE(sybase_fetch_field, NULL)
                PHP_FE(sybase_field_seek, NULL)
                PHP_FE(sybase_result, NULL)
                PHP_FE(sybase_affected_rows, NULL)
                PHP_FE(sybase_min_client_severity, NULL)
                PHP_FE(sybase_min_server_severity, NULL)
                PHP_FE(sybase_set_message_handler, NULL)
                PHP_FE(sybase_deadlock_retry_count, NULL)
        
                {NULL, NULL, NULL}
        };
#else
        function_entry sybase_functions[] = {
                PHP_FE(sybase_connect, NULL)
                PHP_FE(sybase_pconnect, NULL)
                PHP_FE(sybase_close, NULL)
                PHP_FE(sybase_select_db, NULL)
                PHP_FE(sybase_query, NULL)
                PHP_FE(sybase_unbuffered_query, NULL)
                PHP_FE(sybase_free_result, NULL)
                PHP_FE(sybase_get_last_message, NULL)
                PHP_FE(sybase_num_rows, NULL)
                PHP_FE(sybase_num_fields, NULL)
                PHP_FE(sybase_fetch_row, NULL)
                PHP_FE(sybase_fetch_array, NULL)
                PHP_FE(sybase_fetch_assoc, NULL)
                PHP_FE(sybase_fetch_object, NULL)
                PHP_FE(sybase_data_seek, NULL)
                PHP_FE(sybase_fetch_field, NULL)
                PHP_FE(sybase_field_seek, NULL)
                PHP_FE(sybase_result, NULL)
                PHP_FE(sybase_affected_rows, NULL)
                PHP_FE(sybase_min_client_severity, NULL)
                PHP_FE(sybase_min_server_severity, NULL)
                PHP_FE(sybase_set_message_handler, NULL)
                PHP_FE(sybase_deadlock_retry_count, NULL)
        
                PHP_FALIAS(mssql_connect, sybase_connect, NULL)
                PHP_FALIAS(mssql_pconnect, sybase_pconnect, NULL)
                PHP_FALIAS(mssql_close, sybase_close, NULL)
                PHP_FALIAS(mssql_select_db, sybase_select_db, NULL)
                PHP_FALIAS(mssql_query, sybase_query, NULL)
                PHP_FALIAS(mssql_unbuffered_query, sybase_unbuffered_query, 
NULL)
                PHP_FALIAS(mssql_free_result, sybase_free_result, NULL)
                PHP_FALIAS(mssql_get_last_message, sybase_get_last_message, 
NULL)
                PHP_FALIAS(mssql_num_rows, sybase_num_rows, NULL)
                PHP_FALIAS(mssql_num_fields, sybase_num_fields, NULL)
                PHP_FALIAS(mssql_fetch_row, sybase_fetch_row, NULL)
                PHP_FALIAS(mssql_fetch_array, sybase_fetch_array, NULL)
                PHP_FALIAS(mssql_fetch_assoc, sybase_fetch_assoc, NULL)
                PHP_FALIAS(mssql_fetch_object, sybase_fetch_object, NULL)
                PHP_FALIAS(mssql_data_seek, sybase_data_seek, NULL)
                PHP_FALIAS(mssql_fetch_field, sybase_fetch_field, NULL)
                PHP_FALIAS(mssql_field_seek, sybase_field_seek, NULL)
                PHP_FALIAS(mssql_result, sybase_result, NULL)
                PHP_FALIAS(mssql_affected_rows, sybase_affected_rows, NULL)
                PHP_FALIAS(mssql_min_client_severity,   
sybase_min_client_severity,
NULL)
                PHP_FALIAS(mssql_min_server_severity, 
sybase_min_server_severity,
NULL)
                PHP_FALIAS(mssql_set_message_handler, 
sybase_set_message_handler,
NULL)
                PHP_FALIAS(mssql_deadlock_retry_count, 
sybase_deadlock_retry_count,
NULL)
        
                {NULL, NULL, NULL}
        };
#endif

Best regards,
Frode Langvik


Previous Comments:
------------------------------------------------------------------------

[2005-04-01 12:52:34] daniel dot beet at accuratesoftware dot com

Description:
------------
php_mssql.dll and php_sybase_ct.dll have conflicting function alias,
meaning that they cannot be used at the same time.

Since (on Windows at least) you cannot use the Sybase CT client to
connect to MSSQL, and you always have the Microsoft DB-lib available,
there is no current reason for the function aliases in the Sybase CT
extension.

On UNIX, PHP can now use FreeTDS instead of the MS DB-lib, so again the
aliases seem to no longer be required.

Could these aliases be removed, either only for Windows or totally,
removing this conflict. Or if backwards compatability is required, the
aliases be disabled via a php.ini setting?

We have an application that does require access to both databases at
once, and while I have recompiled the PHP Sybase CT dll, removing the
aliases - our clients prefer to use the official PHP source and
builds.

Related bug reports are #13819, #23318 and #24023.

Thanks



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=32531&edit=1

Reply via email to