2016-06-17 14 views
0

公式のPHPドキュメントに従ってIIS7にPHPをインストールしたところ成功しました。私はPHPファイルを実行することができ、私のサイトはOKです。 PDOSとODBCドライバを使ってMSSQLのデータベースに接続できません。私は自分のphp.iniを気にしないで設定しました。私はすべてが良いと思います。また、ODBCはWindows上でネイティブであり、PDOは最新のPHPビルドに含まれていると思います(私は5.5.36です)。PHP PDO ODBC MSSQL接続

だからここに私の接続コードです:

define("UID", 'uid'); 
define("PWD", 'pwd'); 
define("DSN", 'odbc:decheterie'); 
// where 'decheterie' is the dataSource set in the ODBC Connection Manager 

try { 
    $pdo = new PDO(DSN, UID, PWD); 
} catch (PDOException $e) { 
    die("Error! ".$e->getMessage()); 
} 

私が手にエラーがある:

エラー!ドライバを見つけることができません

php -mを実行すると、PDOとODBCモジュールが正しくロードされていることがわかります。 PDO::getAvailableDrivers()は空の配列を返します。phpinfo()内では、 'PDOドライバ'セクションに '値なし'と表示されます。

私はたくさんの投稿と記事を読んでいます。応答が「問題解決」として有効になるたびに、それは既に自分の設定でうまくいきます。

誰かが恩恵を受けることができれば、それは祝福されるでしょう;)

+0

のphp -mは/(Webサーバに組み込まれた)SAPIは、PHPとは全く異なる.iniファイルがありますすることができますCLIのPHP、です。 Webサーバーの下でそのコードを実行している場合、cliの出力はほとんど役に立たないので、phpinfo()をチェックする必要があります。 PDOがインストールされていても、特定のDBドライバが必要です。 pdo-mysql。 –

+0

IIS管理コンソールのモジュールで 'php_pdo_sqlsrv _ *。dll'を有効にしようとしましたか? – gofr1

+0

Marcの情報をお寄せいただきありがとうございます。正しい手順でテストすることはとても重要です。 php_pdo_odbc.dllはWindowsでビルドしなければならない場合でもONになります。私はphp_pdo_sqlsrv _ *。dllをダウンロードして参照しました。ありがとうGofr1 – Ben

答えて

0

解決済み!

上記のコメントに答えがあります。あなたは* _ php_pdo_sqlsrvをDLする必要があります。DLL

あなたのPHP/extにフォルダとあなたのphp.iniの拡張としての参照をして

「*」PHPのバージョンのすべてがうまく に記述されているためでありますMSDNドキュメントhere

おかげ

関連する問題