当前位置: 首页 > 图文教程 > 网络编程 > PHP > 用session做客户验证时的注意事项

PHP
Phpnow服务器软件集成套件的安装问题和解决方法
Discuz中的同步登录
PHP教程:快速学习PHP
PHP教程:典型的单例模式版本
PHP中的单例只在整个页面周期内唯一
AppServ安装配置Apache+PHP+Mysql环境
易于引发PHP代码错误的简单概念
Windows主机设置WordPress的2个方法
WordPress数据库转换到Z-Blog的Access
.htaccess Editor在线制作.htaccess文件
Apache服务器的RewriteMap
初步接触smarty3
PHP5.3新特性:名称空间(Namespaces)
PHP5.3新特性:新语言特性
PHP5.3新特性:增强的ini文件支持
PHP web开发HTTP协议中的KeepAlive
PHP教程:implode函数应用
PHP技巧:preg_replace 修饰符
PHP实例:截取URL地址中的主域名
PHP实现的数据库封装类

PHP 中的 用session做客户验证时的注意事项


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 229 ::
收藏到网摘: n/a

如果你的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有些浪费系统资源, 在优化配置中被关掉, 这样也避免了出现所谓漏洞.