2013-05-01 15 views
6

Microsoft SQL Server 2008 R2(SQLEXPRESS)と共にXAMPP経由でインストールされたPHPバージョン5.3.8を使用しています。私はドライバが正しくインストールされていると思うし、正しい行をphp.iniに追加している(拡張子= php_pdo_sqlsrv_53_ts_vc9.dllが正確である)。 MSSQL PDOがドライバを見つけられませんでした

try { 

    $DBH = new PDO("mssql:host=xxxx;dbname=xxxx", 'xxxx', 'xxxx'); 

} catch(PDOException $e) { 

    echo $e->getMessage(); 
} 

が、私は「ドライバを見つけることができなかった」エラーを取得し、私はそれを問題を解決する方法のすべての種類を微調整しました:

私はそうのようにサーバに接続しようとしています。私は他のすべての種類のドライバを試しましたが、これはApacheが起動時に私にエラーを与えない唯一のものです。私がするphpinfo()を実行すると、pdo_sqlsrvフィールドは0

に設定されているpdo_sqlsrv.log_severity以外の全ての空欄となっている私はmicrosoftから私のドライバをDL'd、と私は両方の2.0と3.0

どれを試してみましたアドバイスは素晴らしいだろう!

+0

modifyiの後にxamppを再起動しましたか? iniファイル? –

答えて

5

mssqlはこれを行う古い方法ですが、sqlsrvが適切です。実際には拡張子も同様に(拡張子= php_pdo_ SQLSRV _53_ts_vc9.dll)と呼ばれている;)

try { 

    $DBH = new PDO("sqlsrv:Server=xxxx;Database=xxxx", 'xxxx', 'xxxx'); 

} catch (PDOException $e) { 

    echo $e->getMessage(); 
} 

ホープ、このことができます!

出典:http://php.net/manual/fr/ref.pdo-sqlsrv.connection.php

examples from documentation

2

ない、これはのCentOS x86_64のマシンを実行しているためですが、sqlsrvが私のためのドライバとして動作しなかった場合、私はdblibを使用していたことを確認:

try { 

    $DBH = new PDO("dblib:host=xxxx;dbname=xxxx", 'xxxx', 'xxxx'); 

} catch (PDOException $e) { 

    echo $e->getMessage(); 
} 

ソースと感謝:http://grover.open2space.com/content/use-php-and-pdo-connect-ms-sql-server

関連する問題