如何使用 PHP 发送 HTTP 请求以使用 Jaxon 连接 PostgreSQL 数据库?

How to send HTTP request with PHP to connect PostgreSQL db using Jaxon?

我尝试连接到 PostgreSQL 数据库时单击按钮并显示消息通知连接成功或失败。

这是我第一次在 Web 界面中使用 Jaxon(PHP 库来做 AJAX,XAJAX 的分支)。

<?php
include "vendor/autoload.php";
use Jaxon\Response\Response;
use Jaxon\jaxon;

class Db_connection
{
    public function test() {
        $host = "host = localhost";
        $port = "port = 5432";
        $dbname = "dbname = test";
        $user = "user = test";
        $password = "password = test";
        $response = new Response();
        $textFail = "Error : Unable to open database";
        $textValid = "Opened database successfully";

        $db = pg_connect("$host $port $dbname $user $password" );
        if(!$db){
          $response->alert($textFail);
           return $response;
        }else {
            $response->alert($textValid);
            return $response;
        }
    }
}

$jaxon = jaxon();
$jaxon->register(Jaxon::CALLABLE_OBJECT, new Db_connection());
$jaxon->processRequest();

?>

<!doctype html>
<html>
<head>
    <title>Jaxon Simple Test</title>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">
    <link rel="icon" href="/favicon.ico">
</head>
<body>
<input type="button" value="Submit" onclick="JaxonDb_connection.test()" />
</body>
<?php

echo $jaxon->getJs();
echo $jaxon->getScript();

?>
</html>

当我从浏览器中单击按钮时,我什么也没得到。

我想从中吸取教训,所以,如果可能的话,请向我解释我在这里做错了什么,或者我的方法是否缺乏洞察力。

https://www.php.net/manual/fr/function.pg-connect.php 查看 pg_connect() 文档。您需要修正它的参数。

您可能还想使用浏览器的开发人员模式来查看您的应用程序何时 return 出现 HTML 错误,而不是预期的 json,这在这种情况下解释了原因你的网页什么也得不到。

蒂埃里