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

PHP
使用.htaccess来防盗链
mysql 时间转换函数的用法
PHP中addcslashes函数与stripcslashes的用法
dedecms5.1升级sp1出现IfTagNull()错误解决方法记录
实现dedecms图集单击图片翻页的功能
动态网页制作PHP常用的正则表达式
PHP读取RSS feed源代码(带注释,可读取多个源)
PHP与正则表达系列之一: PHP中的正则表达式
给wordpress 增加干扰码防采集
使用PHP脚本修改Linux或Unix系统口令
PHP技巧:php过滤危险html代码
php配置文件php.ini的中文注释版
成就PHP高手的五个必由之路
PHP比ASP优秀的七个理由
如何正确理解PHP的错误信息
学习使用PHP数组
PHP中创建并处理图象
RPM安装PHP后应如何配置 Apache
PHP中的Java扩展
PHP4.04 新增加了专用的字符函数 Ctype

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 50 ::
收藏到网摘: 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有些浪费系统资源, 在优化配置中被关掉, 这样也避免了出现所谓漏洞.