【问题标题】:Cookies or Session? Which one should I use for my project?Cookie 还是会话?我应该为我的项目使用哪一个?
【发布时间】:2021-04-03 13:01:24
【问题描述】:

我在 PHP 中有一个使用 Sessions 的完整登录系统,它的工作原理是这样的

<?php

if(isset($_SESSION['user_id']))
{
  //lets the user use their profile
}
else
{
 //takes the user to the login page
}

?>

它在我的本地服务器 (XAMPP) 上运行良好,因为不会注销用户。这意味着会话没有被破坏。但是,当我在作为 Linux(Ubuntu)服务器的实时服务器上使用相同的系统时,它会在我关闭浏览器时破坏会话。我尝试过延长会话寿命,但它不起作用。我知道 Session 应该是这样工作的。

但是,想让用户像在 Facebook 上一样登录(在移动浏览器上)。我知道我可以为此使用 cookie,但不应使用 cookie 来保存用户名和密码等信息。

我该怎么办?任何建议。

【问题讨论】:

    标签: php apache session cookies


    【解决方案1】:

    您应该使用带有 cookie 的会话...这几乎是当今的标准方式。

    cookie 仅存储会话 ID。会话不会被破坏,它会“过期”(这意味着会话 cookie,而不是会话本身)。

    【讨论】:

    • 我还是个新手,你能详细说明一下吗?就像会话持有user_id ......这必须与数据库上的记录相匹配。我想将会话保存在 cookie 中吗?
    • Session 只存在于服务器端,所有数据只存储在那里。会话 id 只是在其下找到数据的会话的标识符。如果 cookie 过期,会话 ID 不会发送到服务器,这会导致创建新会话。但是数据(通常是文件)仍然存在......
    猜你喜欢
    • 2011-10-17
    • 2011-03-02
    • 2012-02-13
    • 1970-01-01
    • 1970-01-01
    • 2023-01-16
    • 2014-06-22
    • 2014-09-06
    • 1970-01-01
    相关资源
    最近更新 更多