Cookies and sessions


Cookies and sessions

我想知道创建和销毁会话cookie的正确方法。

我使用以下内容:

创建会话/cookie值:

session_start();
$_SESSION['SMUsername'] = $Username;
setcookie("SMUsername",$Username, time()+86400, "/","www.Domain.com","False","True");

销毁会话/cookie值:

session_destroy();
if(isset($_COOKIE['SMUsername'])){
    setcookie("SMUsername","", -1, '/');    
}

这是一个好方法,还是"没有完成"?

此外,我还阅读了以下主题:删除cookie

它说永远不要存储带有用户名和/或密码信息的cookie。在没有cookie的情况下,你还能如何使用"记住我"这样的功能?

当打开新浏览器时,我使用cookie来记住用户。(不过已加密,使用md5)当重新打开网站时,使用另一个选项卡,我会使用一个会话来记住用户。这样可以吗?

您的会话/cookie销毁代码很好。

至于如何记住我,这超出了这个答案的范围。然而,请查看如何做到这一点的描述。

简而言之,您可以保存用户名和其他随机字符串的哈希,并将其保存在数据库中,然后在用户显示时进行比较