Linux环境下PHP,PostgreSql的EXPERT请进!!!

shiyee 2000-09-09 12:43:00
我们开发小组在linux+php+postgres下开发了一套物流电子商务站点。
我在把系统和项目数据安装到其他机器上,出现一个奇怪的错误,这个错误已经堆积了一个月之久!一直在我心中很 压抑!希望高手解决这个头痛的问题!
系统和项目站点在原来的机器上运行的没有一点报错!
项目PHP文件从tar cvf sys.tar htdocs
数据库文件:pg_dump sysdb > db.out
在新机器上:
PHP文件解开。
数据库:createdb sysdb;
psql sysdb < db.out
数据库建了nobody用户。
结果,在新机器上有些数据库指令执行的很好,但其他一些地方出现:
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

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

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 13
授权失败
Warning: 1 is not a valid PostgreSQL link resource in ../admin/doauth.php on line 15
------------------
Warning: 1 is not a valid PostgreSQL link resource in ../admin/doauth.php on line 41

Warning: 1 is not a valid PostgreSQL link resource in ../admin/doauth.php on line 42

Warning: 1 is not a valid PostgreSQL link resource in /usr/local/apache/htdocs/shippercontract/goodscontract.php on line 47

Warning: Supplied argument is not a valid PostgreSQL result resource in /usr/local/apache/htdocs/shippercontract/goodscontract.php on line 48

Warning: 1 is not a valid PostgreSQL link resource in ../solvegoods/objinfo.php on line 31

Warning: Supplied argument is not a valid PostgreSQL result resource in ../solvegoods/objinfo.php on line 32

Warning: Supplied argument is not a valid PostgreSQL result resource in /usr/local/apache/htdocs/shippercontract/goodscontract.php on line 70

请问我错在哪里?系统方面?数据库方面?...
如果是,该怎么解决?
...全文
536 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
shiyee 2000-09-11
  • 打赏
  • 举报
回复
to :darkwing
但是你知道,程序在原来的机器上运行的很好。为什么呢?的确,你说的有道理,因为,我试着在
doauth.php文件(检验身份的文件)执行数据库的关闭,在其他文件中出现了不同的情况。我在继续调试,应该不会呀,系统和数据库是一样的,程序文件也是一样的,会不会是其他方面的问题呢?
SimonDW 2000-09-11
  • 打赏
  • 举报
回复
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;}
SimonDW 2000-09-11
  • 打赏
  • 举报
回复
可能是数据库对多用户的同时访问的支持不好吧。
shiyee 2000-09-11
  • 打赏
  • 举报
回复
to: darkwing
确实,程序文件中根本没有注意到正常打开和关闭数据库,到处出现:include,require语句,而包含的语句中有打开数据库而未关闭的情况,因而出现这种错误。
但让我不解的是为什么在原来的机器上运行的没有一点报错?我想到了可能是不是数据库的自动关闭?请问这种特性有吗???
请做做POSTGRESQL的数据库管理员告诉我吧!!!谢谢!!
gzproger 2000-09-10
  • 打赏
  • 举报
回复
从出错信息看,一开始的连接就出错了。
你现检查一下连接数据库的语句,看看为什么在新环境会出错把。
没搞过POSGRES,但这种情况的一般原因都是:
1、帐号和密码改变
2、主机名称或数据库名称改变
shiyee 2000-09-10
  • 打赏
  • 举报
回复
快点来帮我丫!!!

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧