Windows PHP での PostgreSQL のトラブル
-
20-08-2019 - |
質問
Windows で WAMP を使用しています。これにより、PHP、Apache、MySQL がインストールされます。
私は現在、PostgreSQL を必要とする新しいことに取り組んでいます。次のエラーが発生し続けるため、現在のインストールではそれができません。
未定義関数 pg_query() の呼び出し
いつも
未定義関数
Windows 用 PostgreSQL 8.3.7-1 をインストールしました。 php_pgsql.dll
,php_pdo_pgsql.dll
そしてさらに libpq.dll
, postgreSQL の PHP ページの注記には、Windows ユーザーは PHP 5.2.6 以降が必要であると記載されています。
それでも、これらのエラーが発生し続けます...
誰かが最善の行動方針をアドバイスしてもらえますか?それとも、Apache とその他すべてをアンインストールし、各コンポーネントを個別に新規インストールする必要がありますか?
解決
XAMPPは使用によりphp.iniのapache / phpのを "伝える" ことはありません。したがって、PHPは.iniファイルを見つけるために、デフォルトの検索戦略を使用しています。あなたは何も変更していない場合、これは、XAMPP / apacheの/ binに/ php.iniのapacheのバイナリがあるディレクトリ内の1になります。あなたはこのファイルを編集し、拡張子= php_pgsql.dll前に、セミコロンを削除しましたか? 疑問に尋ねる
echo 'php.ini: ', get_cfg_var('cfg_file_path');
を編集しなければならないファイル。XAMPPは、デフォルトではモジュールとしてPHPをインストールし、再度のphp.iniを読み取るためにPHPを取得するために、Apacheを再起動する必要があります。 その後
echo extension_loaded('pgsql') ? 'yes':'no';
<私>はいを印刷する必要があります。それはApacheサービスを停止しない場合は、コマンドシェルを開いて、代わりにWindowsのイベントマネージャの(apache_start.batこれはコンソールアプリケーションとしてApacheを起動し、あなたがこのコンソールで起動エラーを確認することができ、あなたのXAMPPのディレクトリに移動し、入力してください)。 DLLが見つからない場合は、メッセージボックスが表示されます。
他のヒント
あなたは、PHP iniファイルでそれを有効にしましたか?
()の拡張のためにインストールされているのphpinfoへの呼び出しを何と言っていますか?
Apache の error.log に表示されるエラーの種類に応じて、次のような答えが得られます。 これ という質問が役立つかもしれません。
私はあなたが行ったように同じことをやったとissue.But鉱山を処分したがXAMPPのためでした。おそらく、あなたのWAMPを再インストールする必要があります。