こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

WinowsXPでPHPからPostgreSQLにアクセスできません。

Windows上でPHPを利用してPostgreSQLにアクセスを試みているのですが
Fatal error: Call to undefined function pg_connect() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\dbtest.php on line 13
というエラーが出てアクセスできません。
調べていくうちにnfo.phpのConfigure Commandに"--with-pgsq"がないのが原因とはわかったのですが、下記開発環境での[php.ini],[httpd.conf]の設定をいろいろ試しましたが(勿論再起動も)info.phpのConfigure Commandに"--with-pgsq"が表示されないのです。
どなたか、アドバイスしていただけることがありましたらよろしくお願いします。

開発環境
OS:WindowsXP SP2
PHP:5.26
Apache:2.2
PostgreSQL:8.2

投稿日時 - 2008-05-13 17:23:44

QNo.4019501

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

>いろいろ試しましたが

試したことを書いていただくと重複しなくていいのですが(汗

php.iniの[PostgresSQL]セクションはどうなっていますか?またextensionにpgsql.dll(だったかな?)は追加されていますか?

投稿日時 - 2008-05-13 17:41:37

補足

>>試したことを書いていただくと重複しなくていいのですが(汗
まったくその通りですね。失礼しました。

>>php.iniの[PostgresSQL]セクションはどうなっていますか?またextensionにpgsql.dll(だったかな?)は追加されていますか?

httpd.confの編集内容
LoadModule php5_module c:/php/php5apache2_2.dll←追加
AddType application/x-httpd-php .php←追加

php.iniの編集内容&[PostgresSQL]セクション

doc_root = "c:/Program Files/Apache Software Foundation
/Apache2.2/htdocs"←変更
extension_dir = "c:/php/ext" ←変更
extension=php_pgsql.dll ←コメント解除
include_path = ".;c:\php\includes" ←コメント解除
extension=php_mbstring.dll ←コメント解除
mbstring.language = Japanese ←コメント解除
mbstring.internal_encoding = EUC-JP ←コメント解除
mbstring.http_input = auto ←コメント解除
mbstring.http_output = pass ←コメント解除&変更
mbstring.encoding_translation = On ←コメント解除&変更
mbstring.detect_order = auto ←コメント解除
mbstring.substitute_character = none; ←コメント解除

[PostgresSQL]
pgsql.allow_persistent = On
pgsql.auto_reset_persistent = Off
pgsql.max_persistent = -1
pgsql.max_links = -1
pgsql.ignore_notice = 0
pgsql.log_notice = 0

ネット等で調べていくうちに修正箇所が増えて現在はこうなってます。

投稿日時 - 2008-05-14 09:15:41

あなたにオススメの質問