从出错信息看,一开始的连接就出错了。
你现检查一下连接数据库的语句,看看为什么在新环境会出错把。
没搞过POSGRES,但这种情况的一般原因都是:
1、帐号和密码改变
2、主机名称或数据库名称改变

解决方案 »

  1.   

    Warning: 1 is not a valid PostgreSQL link resource in ../admin/doauth.php on line 9
    在执行该命令时使用的数据库连接号不再有效,可能数据库断开了。Warning: Supplied argument is not a valid PostgreSQL result resource in ../admin/doauth.php on line 10由于数据库链接失效,你没有得到有效的RESULT RESOURCE号,但该值却被引用了。Warning: Cannot add header information - headers already sent by (output started at /usr/local/apache/htdocs/obj/carry.php:33) in ../admin/doauth.php on line 12
    这是由于错误信息的输出导致发送的HEADER标志失效。在第一条错误信息之后的错误都是随之引发的。
    建议加上出错判断在打开数据库连接之时。

     if (!pg_connect(...)) {echo "error<br><a href=\"retry.php"\">重试</a><br>";
    exit;}
      

  2.   

    to :darkwing
    但是你知道,程序在原来的机器上运行的很好。为什么呢?的确,你说的有道理,因为,我试着在
    doauth.php文件(检验身份的文件)执行数据库的关闭,在其他文件中出现了不同的情况。我在继续调试,应该不会呀,系统和数据库是一样的,程序文件也是一样的,会不会是其他方面的问题呢?
      

  3.   

    to: darkwing
    确实,程序文件中根本没有注意到正常打开和关闭数据库,到处出现:include,require语句,而包含的语句中有打开数据库而未关闭的情况,因而出现这种错误。
    但让我不解的是为什么在原来的机器上运行的没有一点报错?我想到了可能是不是数据库的自动关闭?请问这种特性有吗???
    请做做POSTGRESQL的数据库管理员告诉我吧!!!谢谢!!