Проблема PostgreSQL на Windows PHP - PullRequest
3 голосов
/ 09 мая 2009

Я использую WAMP для Windows, которая устанавливает PHP, Apache и MySQL.

Сейчас я работаю над чем-то новым, требующим PostgreSQL. Текущая установка не сделает это для меня, так как я продолжаю получать эти ошибки:

вызов неопределенной функции pg_query ()

Всегда

неопределенная функция

Я установил PostgreSQL 8.3.7-1 для Windows, добавил php_pgsql.dll, php_pdo_pgsql.dll и даже libpq.dll, что в примечании на странице PHP для postgreSQL говорит, что пользователям Windows нужно начинать с PHP 5.2.6

Тем не менее, я продолжаю получать эти ошибки ...

Может кто-нибудь посоветовать лучший курс действий? Или я должен просто удалить apache и все остальное и заново установить каждый компонент отдельно?

Ответы [ 4 ]

3 голосов
/ 09 мая 2009

xampp не «сообщает» apache / php, какой php.ini использовать. Поэтому php использует свою стратегию поиска по умолчанию для поиска файла .ini. Если вы ничего не изменили, это будет каталог, в котором находится двоичный файл apache, xampp / apache / bin / php.ini. Вы редактировали этот файл и удалили точку с запятой перед расширением = php_pgsql.dll? Если сомневаетесь, спросите

echo 'php.ini: ', get_cfg_var('cfg_file_path');
, какой файл вам нужно отредактировать.
По умолчанию xampp устанавливает php как модуль, и вам нужно перезапустить apache, чтобы php снова прочитал php.ini. После этого
echo extension_loaded('pgsql') ? 'yes':'no';
должен напечатать yes . Если это не останавливает службу apache, откройте командную оболочку, перейдите в каталог xampp и введите
apache_start.bat
Это запустит apache как консольное приложение, и вы увидите ошибки запуска в этой консоли (вместо диспетчера событий Windows). ). Если DLL отсутствует, вы получите окно сообщения.
1 голос
/ 09 мая 2009

В зависимости от того, какие ошибки вы видите в журнале ошибок Apache, ответы на этот вопрос могут быть полезны.

1 голос
/ 09 мая 2009

Вы включили его в файл php ini?

Что говорит вызов phpinfo () для расширений?

0 голосов
/ 30 декабря 2013

Я сделал то же самое, что и вы, и избавился от проблемы. Но мой был для xampp. Возможно, вам следует переустановить свой wamp.

...