加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php中简单的登入登出实例程序

发布时间:2023-10-26 15:37:18 所属栏目:PHP教程 来源:
导读:关于会话处理

HTTP 是一种无状态的协议,说明每次请求的处理都与之前或之后的 请求无关,但是为了能够调整用户特有的行为和首选项,出现了一种在客户端存储少量信息(常称为cookie)的实践,但由于 cookie 大小的
关于会话处理
 
HTTP 是一种无状态的协议,说明每次请求的处理都与之前或之后的 请求无关,但是为了能够调整用户特有的行为和首选项,出现了一种在客户端存储少量信息(常称为cookie)的实践,但由于 cookie 大小的限制、所允许的 cookie 数量以及 cookie 的实现上的各种不一致,出现了另外一种解决方案:会话处理。
 
会话处理的实现方式是为每位网站访问者分配一个称之为会话 ID(SID)的唯一标识属性,然后将此 SID 与任意数量的数据关联。
 
开始会话
 
session_start();
 
创建会话变量
 
 代码如下
 
1 $_SESSION['username'] = “jason”;
 
删除会话变量
 
 代码如下
 
1 unset($_SESSION['username']);
 
简单的登入登出
 
 代码如下
 
1 $supervisor = "admin";
 
$superpsw = "passwd";
 
2 // 检查是否提交表单
 
if (isset($_POST['superadmin']))
 
{
 
if (!($_POST['supername'] == $supervisor) || !($_POST['superpass'] == $superpsw))
 
{
 
echo "用户名或密码错误";
 
exit;
 
}
 
else
 
{
 
session_start();
 
$_SESSION["superlogin"] = $_POST['supername'];
 
}
 
} else {
 
session_start();
 
// 检查是否设置了会话变量,即是否已经登入,如果没有,显示登入页面
 
if (! isset($_SESSION["superlogin"]) )
 
{
 
echo "
 
3 请输入管理员密码
 
";
 
echo "管理员";
 
echo "
 
";
 
echo "密  码";
 
echo "
 
";
 
echo "
 
";
 
echo "
 
4
 
假设将此文件命名为include.php,将其包含到要验证登入的页面即可,例如 index.php
 
 代码如下
 
1     
 
    require “include.php”;
 
    ?>

2 登出

3 欢迎进入
 
4
 
如此访问 index.php 页面时将进入登入页面,登录后显示 index.php 页面内容,这个过程一直持续到用户结束会话,如关闭浏览器或点击注销按钮,但是会话本身在PHP服务器有一个默认的生存期。
 
有效会话的持续时间由 php.ini 所控制,默认为1440秒,即24分钟
 
    session.gc_maxlifetime = 1440
 
PS:本文是个范例,用简单的代码来做说明,实际应用中会采用更加复杂的控制机制。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章