PHP世界

PHP爱好者乐园

  PHP博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  11 随笔 :: 0 文章 :: 8 评论 :: 0 Trackbacks
如果你的PHP.ini中register_globals = On, 所有post, get, cookie, session的同名变量就会搅和在一起, 可以用$HTTP_*_VARS["username"]来判断你想要的那个变量.

但是即使同名, 在php.ini中variables_order = "GPCS"也会按照优先级别来判断, 等级低的值没法冲掉等级高的. 所以, 如果一开始就用session_register("username")是明智的,也可以用session_is_registered来判断变量是否已经注册.

这是一个例子:

if (!session_is_registered("username")) {
$user_name= "";
session_register("username");
}
同时保证你的php.ini中, variables_order = "GPCS" (缺省) S即session要放在最后, 优先.

register_globals = On有些浪费系统资源, 在优化配置中被关掉, 这样也避免了出现所谓漏洞



posted on 2007-12-17 15:18 loveairnike 阅读(931) 评论(1)  编辑 收藏 引用 网摘

评论

# re: php用session做客户验证时的注意事项 2008-01-16 14:38 传世私服
征途私服  回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: