Heim  >  Artikel  >  php教程  >  php用session做客户验证时的注意事项

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

WBOY
WBOYOriginal
2016-06-21 09:01:41785Durchsuche

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



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn