1

MSSQLServerバージョン1.0用のPHPドライバーを利用しようとしています。

私はすべてをセットアップしましたが、拡張機能php_sqlsrv_ts.dllをロードするのに問題があると思います。私はコマンドラインに行き、これを試しました:

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

私のPHP.iniで-私は持っています:

;extension=php_sqlsrv.dll
extension=php_sqlsrv_ts.dll

スレッドセーフが有効になっているため、php_sqlsrv_ts.dllを使用します。そこから他のモジュールをロードするので、extension_dirは正しいです。Microsoft NativeCLient2008もあります。PHPスクリプトを実行しようとするたびに、次のようになります。

Fatal error: Call to undefined function sqlsrv_connect()

モジュールがロードされていないことと関係があるはずです。MySQLのすべての拡張情報を取得できますが、sqlsrv拡張の情報は取得できません。

PHPにこの拡張機能をロードさせるにはどうすればよいですか?

皆さんありがとう

編集

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 />
4

1 に答える 1

3

それはバージョンの不一致です。モジュールは、mod_php で使用されているよりも前のバージョンの PHP 用にコンパイルされています。サーバー上のバージョンを使用してモジュールをコンパイルする必要があります。

于 2009-10-13T13:56:09.763 に答える