LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1497|回复: 4

php如何连接postgresql?

[复制链接]
发表于 2003-7-10 03:30:40 | 显示全部楼层 |阅读模式
用php怎么都连不上!提示:FATAL: IDENT authentication failed for user "test" 。不懂该怎么办!用户我是用creatuser test创建的!不懂对不对?
看了postgresql的文档,那个用户认证一段怎么都看不懂,能不能解释一下?
还有每次进postgresql都要先换成su,再postgresql,如何用自己建的用户登陆呢?

我的代码是这样的:

<html>
  <head>
    <title>欢迎来到lanb的留言板</title>
    <meta http-equiv="content-type" content="text/html; charset=gb2312">
  </head>

  <body>
  <?php
  $db = pg_connect("dbname=web user=lanb");

  if(!$db)
  {
    $db_error = "无法连接到PostGreSQL数据库!";

    echo $db_error;
  }
  else
  {
    echo "成功连接!";
  }
  ?>

  </body>
</html>

在concsole里面运行php index.php是可以看到成功连接的!但是在网页里面就不可一!
发表于 2003-7-10 11:58:08 | 显示全部楼层
在PHP里连接postgresql数据库是要注意两个方面的问题:
第一:你的PHP是否支持POSTGRESQL
第二:这个就是老生常谈的问题了。就是关于认证的问题。
比如说如果我的postgresql支持TCP/IP连接。那么我就这样连接
$connect = @pg_connect("host=localhost dbname=dbname user=user_name password=user_password") or die("数据库连接错误");

如果我的postgresql数据库不支持tcp/ip连接,那么你就要看postgresql里pg_hba.conf这个文件了,看看它的认证方式是什么样的?
然后用上面的那个方法来连接postgresql数据库。
 楼主| 发表于 2003-7-11 03:12:08 | 显示全部楼层
问题的关键是我在mdk里找不到pg_hba.conf这个文件!
发表于 2003-7-11 08:29:55 | 显示全部楼层
不会吧。你有没有启动postgresql呀?
如果是用RPM包安装的话,它应该在这个目录下:/var/lib/pgsql/data
下。
 楼主| 发表于 2003-7-11 12:13:32 | 显示全部楼层
谢谢斑竹!问题搞定了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表