用session做客戶驗證時的注意事項
更新時間:2006年10月09日 00:00:00 作者:
如果你的php.ini中register_globals = On, 所有post, get, cookie, session的同名變量 就會攪和在一起, 可以用$HTTP_*_VARS["username"]來判斷你想要的那個變量.
但是即使同名, 在php.ini中variables_order = "GPCS"也會按照優(yōu)先級別來判斷, 等級低 的值沒法沖掉等級高的. 所以, 如果一開始就用session_register("username")是明智的, 也可以用session_is_registered來判斷變量是否已經(jīng)注冊.
這是一個例子:
if (!session_is_registered("username")) {
$user_name= "";
session_register("username");
}
同時保證你的php.ini中, variables_order = "GPCS" (缺省) S即session要放在最后, 優(yōu) 先.
register_globals = On有些浪費系統(tǒng)資源, 在優(yōu)化配置中被關(guān)掉, 這樣也避免了出現(xiàn)所謂漏洞.
但是即使同名, 在php.ini中variables_order = "GPCS"也會按照優(yōu)先級別來判斷, 等級低 的值沒法沖掉等級高的. 所以, 如果一開始就用session_register("username")是明智的, 也可以用session_is_registered來判斷變量是否已經(jīng)注冊.
這是一個例子:
if (!session_is_registered("username")) {
$user_name= "";
session_register("username");
}
同時保證你的php.ini中, variables_order = "GPCS" (缺省) S即session要放在最后, 優(yōu) 先.
register_globals = On有些浪費系統(tǒng)資源, 在優(yōu)化配置中被關(guān)掉, 這樣也避免了出現(xiàn)所謂漏洞.
相關(guān)文章
PHP5權(quán)威編程閱讀學(xué)習(xí)筆記 附電子書下載
PHP5中,使用新的統(tǒng)一的構(gòu)造函數(shù)命名方式:__construct(),當然,使用類名同樣也是可以的2012-07-07PHP_MySQL教程-第二天while循環(huán)與數(shù)據(jù)庫操作
PHP_MySQL教程-第二天while循環(huán)與數(shù)據(jù)庫操作...2007-03-03