Tendo problemas para carregar o driver PHP para o SQL Server 2008 Express
-
21-09-2019 - |
Pergunta
Estou tentando usar o driver PHP para o MS SQL Server versão 1.0.
Eu tenho tudo configurado, mas acho que estou tendo problemas para carregar a extensão php_sqlsrv_ts.dll. Eu fui à linha de comando e tentei:
C:\wamp\bin\php\php5.3.0>php.exe --re sqlsrv
Exception: Extension sqlsrv does not exist
C:\wamp\bin\php\php5.3.0>php.exe --re sqlsrv_ts
Exception: Extension sqlsrv_ts does not exist
No meu php.ini - eu tenho:
;extension=php_sqlsrv.dll
extension=php_sqlsrv_ts.dll
O cofre do tópico está ativado para mim, portanto, o uso de php_sqlsrv_ts.dll. Minha extensão_dir está correta porque carrego outros módulos a partir daí. Também tenho o cliente nativo da Microsoft 2008. Toda vez que tento executar meu script PHP que recebo:
Fatal error: Call to undefined function sqlsrv_connect()
Deve ter algo a ver com o módulo não ser carregado. Posso obter todas as informações de extensão para MySQL, mas não para a extensão SQLSRV.
Como posso fazer com que o PHP carregue esta extensão?
Obrigado a todos
EDITAR
Apache_error_log:
PHP Warning: PHP Startup: sqlsrv: Unable to initialize module\nModule compiled with module API=20060613\nPHP compiled with module API=20090626\nThese options need to match\n in Unknown on line 0
PHP Warning: Module 'xmlrpc' already loaded in Unknown on line 0
[Tue Oct 13 14:51:16 2009] [notice] Apache/2.2.11 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Tue Oct 13 14:51:16 2009] [notice] Server built: Dec 10 2008 00:10:06
[Tue Oct 13 14:51:16 2009] [notice] Parent: Created child process 11916
PHP Warning: PHP Startup: sqlsrv: Unable to initialize module\nModule compiled with module API=20060613\nPHP compiled with module API=20090626\nThese options need to match\n in Unknown on line 0
<br />
<b>Warning</b>: PHP Startup: sqlsrv: Unable to initialize module
Module compiled with module API=20060613
PHP compiled with module API=20090626
These options need to match
in <b>Unknown</b> on line <b>0</b><br />
PHP Warning: Module 'xmlrpc' already loaded in Unknown on line 0
<br />
<b>Warning</b>: Module 'xmlrpc' already loaded in <b>Unknown</b> on line <b>0</b><br />
Solução
Essa é uma incompatibilidade de versão. O módulo foi compilado para uma versão anterior do PHP do que é usado para mod_php. Você precisará compilar o módulo usando a versão no servidor.