`
flex_莫冲
  • 浏览: 1092472 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

關於session

    博客分类:
  • php
 
阅读更多

最近接手一個已經上線的項目。這個系統只有登入沒有登出功能。為了保證session不過期,所以用了header的方式來保存session。

我接手後就要求既能登入又能登出。所以就需要在登出的時候清楚session。

登入是這樣寫的

function authenticate()

{

header('WWW-Authenticate: Basic realm="REGISTRATION FOR HR"');

header('HTTP/1.0 401 Unauthorized');

echo "You must enter a valid login ID and password to access\n";

exit;

}

 

在登錄出的時候用session_unset 加 session_destroy是可以清除掉session。但是無法清除保存在cookie的用戶名密碼。$_SERVER['PHP_AUTH_USER']是清除不掉的。

!isset($_SESSION['hr']) && !isset($_SERVER['PHP_AUTH_USER'])

若缺少後者的判斷,則會一直提示authenticate的提示框。即使輸入的帳號是正確的。

 

因此,決定放棄這種做法,手動保存session。

但是也出現了個問題。若使用session_unset 加 session_destroy清除掉session後,權限好像亂了。而logout的時候session沒了。但是重新登錄session的role好像依然保持著上一個登錄的用戶的role。最後解決:在login之前採用unset($_SESSION['role'])。釋放掉session。有點莫名其妙的感覺。

 

 

分享到:
评论

相关推荐

    关于session.doc

    ### 关于Session机制详解 #### 一、术语Session 在计算机科学领域,特别是Web开发中,“session”这个词的含义较为复杂且多变。通常我们提到的“session”是指客户端与服务器之间的一次交互过程,这一过程可以持续...

    Java关于session的详细解释

    ### Java关于Session的详细解释 #### 一、Session的基本概念 在Java Web开发中,Session是一种常用的技术,用于跟踪用户的会话状态。简单来说,Session就是服务器为特定用户分配的一块内存区域,用来存储该用户在...

    .net 和IIS7.5关于Session超时的设置

    .NET 和 IIS7.5 关于 Session 超时的设置是一个重要的议题,尤其是在构建Web应用程序时,确保用户会话的正确管理和安全至关重要。Session是ASP.NET中的一个关键概念,它用于存储用户在网站上浏览期间的状态信息。当...

    关于session的详细解释.pdf

    关于Session的详细解释 在深入探讨Session机制之前,我们首先明确Session的概念及其在网络通信和Web开发中的作用。Session,常被译作“会话”,原意指一系列有始有终的动作或消息交换过程,例如打电话从拨号到挂断...

    servlet中关于session的理解

    ### 关于Servlet中的Session理解 在Web开发领域中,Servlet技术是Java Web开发的重要组成部分,而Session机制则是处理用户会话的关键技术之一。本文将基于提供的文件内容,深入探讨Servlet中Session的工作原理、...

    关于Session和Cookie的一个PPT

    **标题解析:** "关于Session和Cookie的一个PPT" 指的是一个关于网络应用程序中的会话管理和状态跟踪技术的演示文稿。Session和Cookie是Web开发中的关键概念,用于在用户与服务器之间保持状态。 **描述分析:** ...

    关于session丢失问题

    在IT行业中,Session是Web应用程序中用于保持用户状态的关键机制。当用户登录网站后,服务器会为该用户创建一个唯一的Session ID,并将其存储在服务器端,通常是在内存中。然后,这个Session ID会通过Cookie或者URL...

    一个关于Session的小demo

    本小demo以JSP为基础,旨在帮助初学者理解并掌握Session的使用方法。 首先,我们来解释一下什么是Session。Session是服务器端存储的一个数据结构,用于保存用户特定的信息,比如用户的登录状态、购物车内容等。当...

    关于SESSION的好文章

    【标题】:深入理解Web开发中的Session机制 【描述】:本文将详尽解析Web开发中的Session机制,从基本概念到实际应用,帮助读者全面掌握Session在维持客户端与服务器状态中的重要作用。 【标签】:Session,HTTP...

    一篇关于介绍一篇关于session的好文章,写的很详细

    介绍一篇关于session的好文章,写的很详细session这个词被滥用的程度大概仅次于transaction,更加有趣的是transaction与session在某些语境下的含义是相同的。

    关于session与cookie的原理简述

    【Session与Cookie原理简述】 Session和Cookie是两种在Web开发中常见的用户状态管理机制,它们主要用于在HTTP协议无状态的特性下跟踪用户状态。理解它们的原理对于编写高效的Web应用至关重要。 **Cookie原理** ...

    一篇关于session的好文

    【标题】:深入理解Web应用中的Session机制 【描述】:本文主要探讨了Web应用程序中的Session机制,旨在帮助读者理解其工作原理,并解决在Java Web应用中使用Session时可能出现的问题。 【部分内容】: 1. 术语...

    session与cookie详解

    关于session和cookie的详细解释 <br>所有疑问通吃

    在Java的web编程中关于session技术的使用详解

    在Java的Web编程中,Session技术扮演着至关重要的角色,它是服务器端用来跟踪用户状态的一种机制。当Web应用无法在无状态的HTTP协议中保持用户信息时,Session就显得尤为重要。下面将详细介绍Session的工作原理、...

    jsp中session的用法详解

    下面是关于 session 的一些重要知识点: * session 是一种服务器端的机制,用于存储用户的信息。 * HttpSession 对象可以存储任何类型的 Java 对象。 * setAttribute() 方法可以将数据存储到 session 中。 * ...

    jsp中存取session值简单介绍

    关于session的深入应用还包括如何对未登录页面实现拦截,如何解决文件上传后重启时文件自动删除等问题。这些问题的解决方法往往需要结合Web应用的框架和服务器的配置来具体分析。 最后,需要注意的是,在实际应用中...

    session介绍

    以下是关于Session的详细解释: 1. **定义** Session,即“会话”,是指用户从打开浏览器访问网站到关闭浏览器之间的连续交互过程。在Web开发中,Session主要用来存储用户在会话期间的相关信息,如登录状态、...

Global site tag (gtag.js) - Google Analytics