设为首页收藏本站language 语言切换
查看: 1457|回复: 0
收起左侧

将 PHP 从 4.0.6 升到 4.2.1 的注意事项

[复制链接]
发表于 2010-2-24 13:41:28 | 显示全部楼层 |阅读模式
<>以前做了个购物网站的PHP程序,但前不久将PHP从4.0.6升到4.2.0后再一运行那程序就面目全非了(惨相啊.....:) <BR>不过最终问题还是解决了,最近有人也碰到了相同的问题来问我,所以我干脆写出来吧。 <BR><BR>我碰到的出错主要问题在PHP.INI中的配置参数register_globals=off <BR><BR>此项设off后PHP的程序就不会自动从Cookie,Session及页面地址"?"号后的参数中得到变量的值了,也不会自动接收form表单所传的值,之所以默认这样做是为了防止变量中毒(variable poisoning),PHP以前版本这一项不是默认off的所以没出问题。 <BR><BR>解决方法是: <BR><?  <br>echo $HTTP_COOKIE_VARS['variable'];//得到cookie的值 <BR>echo $HTTP_SESSION_VARS['variable'];//得到session的值 <BR>echo $HTTP_POST_VARS['variable'];//得到表单所传的值-----相应表单框名 <BR>echo $HTTP_GET_VARS['variable'];//得到"xxx.php?variable=123456"中问号后面所跟的变量值 <BR>echo $HTTP_SERVER_VARS['REMOTE_ADDR'];//得到对方IP地址<BR>echo $HTTP_POST_FILES[''];//取得用表单传过来的文件<BR>?&gt; <BR><BR>希望大家在今后写代码时尽量用如上的完整写法(等出错后再改代码那可是劳民伤财啊),因为上面的那种写法无论是在register_globals设为on时还是off时都不会出错,且安全性更高。</P></div>
您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-4-6 07:17 , Processed in 0.514606 second(s), 24 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

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