Включить поддержку PHP для postgresql в сервере Ubuntu 11.04

Я установил Apache2 с поддержкой php5, и все работает там. Я установил PostgreSQL и могу подключиться к нему с помощью терминала и выполнять SQL-запросы.

ПРОБЛЕМА: я не могу получить рабочее соединение между моими php-скриптами и базой данных PostgreSQL. Я установил php5-pgsql, упакованный из репозиториев, но соединение просто не сработает.

Появляется следующее сообщение об ошибке:

PHP Fatal Error: вызов неопределенной функции pg_connect () в /var/www/[myfile].php в строке [X]

Как включить поддержку соединений PostgreSQL в PHP5 в ubuntu 11.04?

EDIT: проверено phpinfo () и не найдено записей для PostgreSQL. Я не знаю, почему это так, я установил пакет php5-pgsql для ubuntu 11.04.

Вот что сработало: я установил phppgadmin из репозиториев Ubuntu. Мало того, что это делает хороший инструмент доступным для меня сейчас, он также установил необходимые пакеты для php для подключения к postgresql.

После этого все было в параметрах соединения. Он не будет подключаться к базе данных на локальном сервере, пока я не определю хост соединения, порт, базу данных, пользователя и пароль в этом порядке в pg_connect ().

Я до сих пор не знаю, почему установка php5-pgsql сама по себе не включала соединения PostgreSQL с php. Любой ввод данных будет полезен.

    Установка пакета php5-pgsql решает проблему . (в зависимости от версии … php4-pgsql для php4)

    apt-get install php5-pgsql 

    Не забудьте перезапустить Apache.

     /etc/init.d/apache2 restart 

    – Обратите внимание, что это может быть сложно, если вы не администрируете свой сервер.

    В настоящее время я использую Ubuntu 16.04 LTS. Мне тоже приходилось сталкиваться с такой же проблемой, в то время как выбирая значения Postgress Database с помощью Php, я решил ее с помощью приведенных ниже команд.

    Версия Mine PHP – 7.0, поэтому я попробовал команду ниже.

    apt-get install php-pgsql

    Не забудьте перезапустить Apache .

     /etc/init.d/apache2 restart 

    Ниже мой код, возможно, кому-то пригодится:

    testdb.php

     <html> <body> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td> Friend ID </td> <td> Name </td> </tr> <?php $db = pg_connect('host=localhost dbname=postgres user=postgres password=root port=5432'); $query = "SELECT * FROM account"; //account is name of table $result = pg_query($query); if (!$result) { echo "Problem with query " . $query . "<br/>"; echo pg_last_error(); exit(); } while($myrow = pg_fetch_assoc($result)) { printf ("<tr><td>%s</td><td>%s</td></tr>", $myrow['id'], htmlspecialchars($myrow['name'])); } ?> </table> </body> </html> 

    Единственный вывод, который я могу придумать, заключается в том, что phppgadmin установил все необходимые пакеты, чтобы PHP5 подключился к PostgreSQL. Я посмотрел на зависимости, и я считаю, что я либо не устанавливал их вообще, либо не устанавливал их правильно.

    Я не нуждаюсь в дополнительной помощи на этой арене, поскольку у меня есть рабочая установка и знаю, по крайней мере, один способ добраться до этого момента.