BSD爱好者乐园jxtm.blog.chinaunix.net
剑心通明
全部博文(7460)
节日礼物(0)
特产美食(0)
运动户外(0)
计算机相关(0)
女人(0)
男人(0)
母婴(0)
居家(0)
美容时尚(0)
手机数码(0)
2011年(1)
2009年(669)
2008年(6790)
linux_ka
叶绍琛
zongg
瑞儿
HonestQi
love400
nqcc2014
wjwjwj
leimingg
pinkowa
grape
tracywan
lirongwe
oneplusc
分类:
2008-05-29 10:36:10
register_globals是php.ini里的一个配置,这个配置影响到php如何接收传递过来的参数比如:GET,POST,Cookieregister_globals可以设置为ON或Off,简单来说当register_globals=Off的时候,接收页面程序应该用$_GET['name']和$_GET['pass']或$_COOKIE['name']来接受传递过来的值。视传值的方法来决定,用GET传值,用$_GET['name'] 来接收值,或用$HTTP_GET_VARS['name']用POST提交数据的话用就用$_POST['name']来接收数据,或用$HTTP_POST_VARS['name']当register_globals=On的时候,接收页面程序可以直接使用$user_name和$user_pass的这种类似访问变量的方式得到值。 phperz.com
顾名思义,register_globals的意思就是注册为全局变量,所以当On的时候,传递过来的值会被直接的注册为全局变量直接使用,而Off的时候,我们需要到特定的数组里去得到它。所以,当你碰到无法得到值的时候应该首先检查一下你的register_globals的设置和你获取值的方法是否匹配。(查看可以用phpinfo()函数或者直接查看php.ini) PHP 4.2.0 版开始,配置文件中 register_globals 的默认值从 on 改为 off 了,所以一般出错的原因都是你用的php4.2.0以前版本的编程风格,用$name取值。但你当前所用的php版本高于4.2.0。导致用$name取不到值。推荐把此项关闭,设置为Off。那我们为什么要使用Off呢?原因有2: 1、php以后的新版本默认都用Off,虽然你可以设置它为On,但是当你无法控制服务器的时候,你的代码的兼容性就成为一个大问题,所以,你最好从现在就开始用Off的风格开始编程 2,此项要是打开,会存在很多安全隐患。比如在验证用户时。如果你的代码写的不够严谨,会导致攻击都构造特殊值来饶过验证,
上一篇:用PHP发电子邮件(二)
下一篇:使用php动态生成gif时遇到的问题和解决办法
登录 注册