QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1305|回复: 7

在win中调试好的php文件在linux中执行出错怎么解决?

[复制链接]
发表于 2004-8-13 10:30:26 | 显示全部楼层 |阅读模式
linux主机装的是FC2,配置了web服务器,因为在win上编写网页方便,所以我在win上也配置了apache+php+mysql的环境,但在win中运行成功的php文件复制到linux里的目录下(var/www/html/), 不能正确执行php语句,请问怎么办?

前提是linux机器的web配置已经成功,但发现在其上写的php文件所有者是root,图标也是php的,而从win中复制过来的php文件所有者是上传的用户名,图标不是php的,被认成了一般的html,该怎么改过来?

谢谢!
发表于 2004-8-13 10:34:10 | 显示全部楼层
什么错误?
回复

使用道具 举报

 楼主| 发表于 2004-8-13 11:17:32 | 显示全部楼层
是这样的,在win中编好的php文件,调试成功后,在linux下判断语句无效。
看文件属性,win中复制过来的php文件linux认为是一般的“html文件”,而在linux中写的php文件,属性是“php脚本”

怎么回事呢?
斑竹帮忙
回复

使用道具 举报

发表于 2004-8-13 12:25:33 | 显示全部楼层
……………………………………
哪行语句?

认成 HTML 估计是因为 win 和 linux 的回车的字符不一样,导致 Lin 没有认出 <? 吧?
一般不用管它,PHP 认出来就行了。
回复

使用道具 举报

 楼主| 发表于 2004-8-13 13:48:59 | 显示全部楼层
问题查出来了!是这样的:
在win中php语句直接可以从前一网页中的表单中得到变量值,但在linux下,要用 $_POST[" 变量"]来获取变量的传递值,真是奇怪啊!

例如得到变量$zip的值,我在win环境下这样写:
if ($zip) {......} //$zip的值是自动从上一页面传递进来的
但在linux下,一定要在前面加上:
$zip = $_POST["zip"];
才能用if去判断


是不是php的版本问题啊?
回复

使用道具 举报

发表于 2004-8-13 14:29:49 | 显示全部楼层
要转移PHP文件的话,把PHP打成包,再解压出来就好了,用网络传的话,里面的部分语句会保护,所以传过去只能得到结果,而没语句~是8是能解决这个问题- -小弟很菜,说错了别怪偶哦- -
回复

使用道具 举报

发表于 2004-8-13 15:42:36 | 显示全部楼层
不是php版本的问题。
是因为你的 php.ini 里的设置不同。

当然,PHP 版本不同默认设置也有些许变化。
建议已 Linux 写的设置为标准,修改 Win 下的 php.ini
回复

使用道具 举报

 楼主| 发表于 2004-8-13 15:54:54 | 显示全部楼层
明白了,谢谢!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-5-10 09:27 , Processed in 0.138235 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

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