有人能一步一步帮助我吗?非常感谢。
function wampserver (){
$host = "localhost";
$port = "5432";
$name = "IMSDB";
$user = "postgres";
$pass = "magahin";
$pg = pg_connect("host=$host port=$port dbname=$name user=$user password=$pass")
or die("Can't connect to database.");
}
您的PHP设置中没有安装Postgres扩展。有关如何安装,请参阅您的平台文档
您应该包含类为pg_connect的文件,以便访问该函数并连接您的Db
考虑pg_hba.conf中的第一条规则:
local all all peer
这意味着,对于所有本地连接,Unix用户应该与db用户相同。显然,php代码的情况并非如此,因此用户的对等身份验证失败。。。。
第二条规则会让你的脚本连接,但它被忽略了,因为第一条规则优先:
local all all trust
此规则意味着允许所有本地连接,无需密码,也无需检查任何身份。
如果可以的话,只需删除第一条规则,然后重新加载postgresql服务,使更改生效。
其他规则应该与问题无关,因为它们与TCP连接有关,根据错误消息,这不是脚本使用的方法,而是试图通过默认的Unix域套接字进行连接。