前提・実現したいこと
PHPからPostgreSQLへの接続を行うシステムを作成しており、一度完成したのですが、PHPからPostgreSQLに接続する部分で下記のようなエラーが発生してしまうようになりました。以前までは正常に動いていたはずです…。しばらく調べたのですが、修正方法が分からなかったため質問させていただきます。
発生している問題・エラーメッセージ
<br /> <b>Warning</b>: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Permission denied Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432? could not connect to server: Permission denied Is the server running on host "localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432? in <b>/var/www/html/login.php</b> on line <b>6</b><br /> <br /> <b>Warning</b>: pg_query_params() expects parameter 1 to be resource, boolean given in <b>/var/www/html/login.php</b> on line <b>13</b><br /> "ID\u304b\u30d1\u30b9\u30ef\u30fc\u30c9\u304c\u9593\u9055\u3063\u3066\u3044\u307e\u3059"<br /> <b>Warning</b>: pg_close() expects parameter 1 to be resource, boolean given in <b>/var/www/html/login.php</b> on line <b>18</b><br />
該当のソースコード
<?PHP header('Content-type: application/json; charset=utf-8'); $user_name = filter_input(INPUT_POST, 'user_name'); $password = filter_input(INPUT_POST, 'password'); $conn = "host=localhost dbname=testdb user=postgres password=pw"; $link = pg_connect($conn); if (!$link) { } $result = pg_query_params($link,"SELECT * FROM loginuser WHERE user_name =$1",array($user_name)); if (!$result) { echo (9); $close_flag = pg_close($link); exit(); } $rows = pg_fetch_array($result, NULL, PGSQL_ASSOC); $close_flag = pg_close($link); if ($close_flag) { if($password != $rows['password']){ echo (9); }else{ echo ("ログイン成功"); session_start(); } } ?>
試したこと
.pidファイルを一度削除することで治ることがあるという記事を見かけ、一度消して動かしてみたのですが駄目でした。
補足情報(FW/ツールのバージョンなど)
PostgreSQL10