使用保存的会话ID恢复php会话?

时间:2014-11-13 06:26:59

标签: php cookies session-variables

我想使用哈希值和盐渍值从早期会话恢复所有PHP会话变量,然后存储在cookie中。我使用此值来检索旧的会话ID,然后尝试加载该会话。

if(isset($_COOKIE['user']))
    {
        $user = sanitizeString($_COOKIE['user']);   
        $result = queryMySQL("SELECT sessionID FROM cookie WHERE user='$user'");

             if ($result->num_rows == 1)
                {     
                    $row = $result->fetch_array(MYSQLI_ASSOC);              
                    //echo $row['sessionID'];
                     $storeResult=$row['sessionID'];
                     session_id($storeResult);
                }     
    }

session_start();

在stackoverflow上的现有帖子中,大多数点都是How to restore a PHP session?但它实际上并没有解决检索尚未被服务器删除的会话。只要会话仍在服务器上,我是否应该能够使用这两行代码重新加载它们?

session_id($storeResult);
session_Start();

现在我看到cookie已设置但会话变量(例如$ _SESSION [' votes'])从未设置。我所做的只是关闭浏览器并重新打开,因此初始会话之后的时间很短。

从之前的帖子中,似乎并不是检查具有特定ID的会话是否存在的直接方法。还有其他任何建议吗?谢谢。

0 个答案:

没有答案