11 Session和数据保持

WBOY
풀어 주다: 2016-07-29 08:55:24
원래의
1061명이 탐색했습니다.

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>
로그인 후 복사

3 预防Session定制

  • 不会把session标志符附加到URL上的session cookie.
  • 频繁的生成新的sessionID

ini_set('session.use_only_cookie', true);
session_start();
if(!isset($_SESSION['generated']) || $_SESSION['generated'] 30))
{
    session_regenerate_id();
    $_SESSION['generated'] = time();
}
echo$_COOKIE['PHPSESSID']
로그인 후 복사
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介绍了11 Session和数据保持,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!