我正在阅读this tutorial,并且在代码中的某一点,从数据库中检索用户信息并为用户创建会话:
// the default storage is a session with namespace Zend_Auth
$authStorage = $auth->getStorage();
$authStorage->write($userInfo);
我试过这个,但是一旦浏览器关闭,这个会话就会过期。所以我的问题是如何将它与Zend_Session结合起来创建一个持续20天的cookie?我无法通过Zend_Session文档弄清楚..
任何帮助表示赞赏! 感谢
答案 0 :(得分:2)
不要混合2个不同的任务。您拥有的一项任务是“身份验证”,另一项任务是“记住我的功能”。
所以不要试图一次性解决它们。
为了记住我,使用随机哈希存储另一个 Cookie,并保留一个表格,将每个随机哈希值与特定user_id
相对应。
此外,在SO上有很多关于“记住我”实现的讨论:http://www.google.ru/search?q=site%3Astackoverflow.com+remember+me&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru:official&client=firefox