• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHP PDOライブラリが読み込まれない)

PHP PDOライブラリが読み込まれない

このQ&Aのポイント
  • PHP5+Apache(2.0)+PostgreSQLで開発しており、PDOでPostgreSQLに接続しようとしたところ、「PDOクラスが見つかりません」というエラーが発生しました。
  • phpinfo()関数で調べたところ、PDOのライブラリがロードされていないことが分かりました。php.iniには必要な設定が記述されており、DLLファイルも存在しているため、原因がわかりません。
  • Apacheの再起動も行いましたが、問題は解決しませんでした。原因となる箇所があれば教えていただきたいです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Windows XP + Apache v2.05 + PHP v5.16で、SQLite が PDO で使っています。 phpinfo() で PDO欄と pdo_sqlite欄が表示されています? > php.iniには > extension_dir = "C:\php\php-5.2.0-Win32\ext" > extension=pdo_pgsql.dll > extension=php_pdo_pgsql.dll PostgreSQL は設定していないので不明ですが、SQLite, MySQL も同じ設定ですから間違っていないと思いますが、  extension=php_pdo.dll は記述しています? これは PHP のソースですか? pdo.dsn.mydsn="pgsql:host=xxx.xxx.xxx.xxx port=5432 dbname=mydb user=postgres password=sa" SQLite は下記のように記述しています。 $DSN = new PDO( "sqlite:C:\Prog...\Hoge.SQLite" );

rector
質問者

お礼

qaz_qwerty_me様、早速のご回答ありがとうございます。 思いっきり抜けておりました、 extension=php_pdo.dll の記述が。 同僚の言葉を鵜呑みにしておりました。 ちなみに >これは PHP のソースですか? >pdo.dsn.mydsn="pgsql:host=xxx.xxx.xxx.xxx port=5432 dbname=mydb user=postgres password=sa" とりありますが、これはデータソースの設定をphp.iniで定義しております。PHPソースでは定義したデータソース名を使うというやり方で。 再起動してみてPDOがロードされていることが確認できました。 ありがとうございました。

関連するQ&A

専門家に質問してみよう