2016-06-24 7 views
1

Windows Server 2012 R2にPHP 5.6.23(スレッドセーフ)とApache 2.4.20をポート8080にインストールしました。PDOをMS SQL Serverに接続しようとしています。私はその後、私はextフォルダにダウンロード.dllファイルを移動する必要がありMicrosoftPHP 5.6 TSでMSSQLのPDOを有効にするには?

からドライバをダウンロードする必要がphp docs状態。その後、

extension=php_sqlsrv_56_ts.dll 
extension=php_pdo_sqlsrv_56_ts.dll 

新しい拡張機能を有効にするためにphp.iniファイルに次の行を追加します。最後に、私は新しい設定をロードするためにApacheサービスを再起動します。しかし、私は私がphpinfo()出力を見ると

Fatal error: Undefined class constant 'SQLSRV_ATTR_ENCODING' 

は、その後、私は期待のように、PHPがMSSQL拡張してコンパイルされていないことを確認し、次のエラーを取得するMS SQL Serverに接続する私のPHPスクリプトにアクセスしようとします。ここに私が表示されます

Configure Command cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo" 

php5.6.23でPDO-MSSQLを正しく有効にするには、ほかに何が必要ですか?

答えて

2

私は同じ問題を抱えていました。それを解決するにはphp.iniファイルを開き、変数Extension_dirを探してください。おそらくextに設定されています。 extの値を、フォルダextがあるフルパスに変更します。

PHPフォルダがCドライブ上にあると仮定すると、それは私はそれが

+0

これはうまくいった!!!!!どうもありがとう – Jaylen

-1

マイクロソフトはこのドライバをしばらく更新していないことに注意してください。ソースコードの改訂版(コードプレックス)に対するパッチに基づいてPHP 5.5用の非公式なビルドがあり、PHP 5.6でソースをビルドすることは難しいという未確認の噂があります。

公式バージョンは、PHP 5.2,5.3、および5.4用にのみリリースされています。

これらの問題は、PDOドライバ(pdo_sqlsrv)と非PDOドライバ(sqlsrv拡張)の両方に適用される可能性があります。

+1

あなたはこのMicrosoftリンクhttps://www.microsoftから5.6用のドライバをダウンロードすることができます作品を願って、この

extension_dir = "C:/php/ext/" 

のようにしてください。 com/en-us/download/details.aspx?id = 20098バージョン3.2はPHP 5.6,5.5、および5.4をサポートしています – Jaylen

関連する問題