php中使用session
程序员文章站
2022-03-15 09:41:27
...
在登录页面新建session
session_start();
$_SESSION['username'] = $username;
在需要验证的页面使用
//验证session
session_start();
//session中是否存在username并且session是否过期
if(!isset($_SESSION["username"])|| time()<($_SESSION['username'] + 1200)){
echo "请先登录<br/>";
echo '点击此处 <a href="login.html">登录</a> !<br />';
exit;
}
注销session
session_start();
/*** 删除所有的session变量..也可用unset($_SESSION[xxx])逐个删除。****/
$_SESSION = array();
/***删除sessin id.由于session默认是基于cookie的,所以使用setcookie删除包含session id的
cookie.***/
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time()-42000, '/');
}
// 最后彻底销毁session.
session_destroy();
//跳转到登陆页面
Header("HTTP/1.1 303 See Other");
Header("Location: login.html");
ps:session_start();前不能有任何输出,必须加在页面的最顶部
不然会报 Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
推荐阅读
-
解析iOS应用的UI开发中懒加载和xib的简单使用方法
-
Laravel 下配置 Redis 让缓存、Session 各自使用不同的 Redis 数据库
-
在Asp.Net或.Net Core中配置使用MarkDown富文本编辑器有开源模板代码(代码是.net core3.0版本)
-
Shiro权限管理框架(四):深入分析Shiro中的Session管理
-
ASP.NET Core 3.0 : 二十八. 在Docker中的部署以及docker-compose的使用
-
.NET Core Razor Pages中ajax get和post的使用
-
Python中Pyyaml模块的使用
-
php中使用Ajax时出现Error(c00ce56e)的详细解决方案
-
在Asp.Net Core中配置使用MarkDown富文本编辑器实现图片上传和截图上传(开源代码.net core3.0)
-
php类中的各种拦截器用法分析