首页 技术教程 实用代码 注册破解 正则表达式 网址导航 电子书籍

PHP中register_globals引发的问题

前几天要命了。。因为偷懒,服信建材拿tg的代码来复用了一下,,本地测试完,传到新开的虚拟主机上去。。不能登录,phpinfo();看了一下,果然是register_globals没开。。  要信诺立给开是不可能了。。如何有效地改最少的代码,让全部程序正常地跑起来呢。。  刚学PHP的时候,官方文档上demo建议用户关闭全局变量并且用$_REQUEST["XXX"]、$_POST["XXX"]等方式获得表单传送过来的数据,当时也没有深究究竟为什么要这么做,  惯性的力量真的是比较强大。。后来看myg(就用缩写了,省得待会儿又被他用so361.com[广告]什么的搜出来。。)写的程序看得多了,我也就跟着全部用全局变量传递表单提交的数据。没想到这下碰...
类别:网页编程 - PHP技术    查看:235    更新:2014-05-19

关于register_globals设置的问题

基于各种各样的理由,PHP 的设置需要依赖于 register_globals 参数打开,但是也成为安全的重要隐患,请看下面的一段代码:<?if (authenticate_user()) {$authenticated = true;}...?> 远程用户可以简单的传递 'authenticated' 作为表单变量,即使authenticate_user() 函数返回 false,$authenticated 还是会设置成 true。这是一个简单的例子,你或许会说,我的程序不会这样来写。而实际上,在稍微复杂一些的应用里面,这个机制就会成为重大的漏洞。 因此,新版本的 PHP ,我们建议用户不要采用这个变量来控制应用,虽然我们没有打算要在不久的将来删除。为了帮助用户建立 register_globals 设置为 off 的应用,增加了一些变量来代...
类别:网页编程 - PHP技术    查看:228    更新:2014-05-19