无法从php连接到Postgres - >调用未定义的函数pg_connect()

Leo*_*n83 4 php apache xampp

我发布这个问题作为预览中的答案帖子没有帮助我.我正在尝试从本地计算机连接到位于远程服务器上的DB postgres.我正在使用Xampp和Netbeans IDE.

下面是我试图运行的代码:

        //attempt a connection
    $dbh = pg_connect("host=server_name port=5432 dbname=prototype1 user=leonidz password=****");
    if (!$dbh) {
    die("Error in connection: " . pg_last_error());
               }
Run Code Online (Sandbox Code Playgroud)

这是错误消息:

Fatal error: Call to undefined function pg_connect() in C:\xampp\htdocs\PhpProject1\index.php on line 10
Run Code Online (Sandbox Code Playgroud)

在php.ini我没有提交:extension = php_pgsql.dll和extension = php_pdo_pgsql.dll

我还映射了extension_dir ="C:\ xampp\php\ext \"并在更改后重新启动了Apache服务器.

我不知道我还应该做什么,请帮忙.

小智 10

在C:\ xampp\php\php.ini中,取消注释:

延长= php_pdo_pgsql.dll

延长= php_pgsql.dll

  • 像魅力一样工作。 (2认同)
  • 和 `extension="pgsql.so"` 如果在 Linux 上运行 xampp (2认同)

Aya*_*jee 6

转到 PHP dir oepn php.ini 文件,在那里你会找到这两行,只需删除左侧的分号,保存文件。接下来,停止 xampp 服务器并再次重新启动它,它将正常工作

;extension=pdo_pgsql
;extension=pgsql
Run Code Online (Sandbox Code Playgroud)


seb*_*ott 5

在 php.ini 你需要取消注释

扩展名=php_pdo_pgsql.dll

扩展名=php_pgsql.dll

扩展名=“pgsql.so”