欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

11 Session和数据保持

程序员文章站 2022-04-18 22:56:47
...
1 通过SessionID维护网站中的用户信息

session_start();
$_SESSION['visits']++;
print'You have visited here '.$_SESSION['visits'].' times.
'
; echo'session id = '.$_COOKIE['PHPSESSID']; echo"
"
; echo"session name = ".session_name()."
"
; ?>

SessionID记录在全局变量_COOKIE中,SessionID的名字是PHPSESSID,PHPSESSID也可以通过session_name()获得。

2 预防Session劫持


ini_set('sessio.use_only_cookies', true);
session_start();
$salt = 'YourSpecialValueHere';
$tokenstr = date('W').$salt;
$token = md5($tokenstr);
echo'token = '.$token.'
'
; if(!isset($_REQUEST['token']) || $_REQUEST['token'] != $token) { exit; } $_SESSION['token'] = $token; output_add_rewrite_var('token', $token); echo'link'; ob_flush(); output_reset_rewrite_vars(); ?>

session_start();
output_add_rewrite_var('var', 'value');

echo'link';
ob_flush();

output_reset_rewrite_vars();
echo'link';
?>以上例程会输出:

ahref="file.php?PHPSESSID=xxx&var=value">linka>ahref="file.php">linka>