检查会话是否不存在php

Nav*_*eva 2 php session

我有以下PHP代码:

<?php 
if (!(session_id('password')) || !(session_id('user_name'))) {    
    header("Location: ../../"); /* Redirect browser */
}
 ?>
Run Code Online (Sandbox Code Playgroud)

哪个应该检查会话是否存在,如果不存在,用户重定向,问题是这个条件总是如此,即使会话确实存在,我的问题是如何解决它?

Gau*_*164 6

试试$_SESSION喜欢

<?php 
   if (!isset($_SESSION) || !isset($_SESSION['password']) || !isset($_SESSION['user_name'])) {
         header("Location: ../../"); /* Redirect browser */
   }
?>
Run Code Online (Sandbox Code Playgroud)


小智 6

session_id()不用于获取会话信息.它用于更改用户的会话ID.您所做的是将每个人的会话ID更改为字符串"user_name".

而是这样做;

if( empty( $_SESSION[ 'user_name' ] ) ) header("Location: ../../");
Run Code Online (Sandbox Code Playgroud)

我不建议在会话中存储用户的密码.没有理由,只是把它放在外面更安全.