Phiên của tôi dường như chỉ hợp lệ trong cửa sổ/tab hiện tại. Ngoài ra nó dường như thời gian chờ một cách nhanh chóng. Heres cách tôi đang cố gắng để làm điều đó:Zend Framework rememberMe() dường như không nhớ tôi
Đây là trong điều khiển đăng nhập của tôi:
$adapter = $this->getAuthAdapter($data);
$auth = Zend_Auth::getInstance();
$result = $auth->authenticate($adapter);
if (!$result->isValid()) {
$this->view->err = "Invalid username or password.<br/>Please try again.";
return $this->render('index'); // re-render the login form
}
Zend_Session::rememberMe(60*60*24*7*4);
Và đây là trong bootstrap của tôi:
Zend_Session::start();
Tôi tương đối mới đối với một số của công cụ này, vì vậy chịu với tôi! Mọi sự trợ giúp sẽ rất được trân trọng.
Hi Mark, xin lỗi vì đã trả lời chậm. Tôi đã không nghĩ để xem xét ở đây trong một vài ngày. cookie_lifetime là trong thực tế thiết lập để 0. Tôi đã đọc mà nhớMe cần phải được gọi là trước session_start() để session_set_cookie_params có thể thiết lập suốt đời. Tuy nhiên tôi cũng đã đọc rằng zend_session :: start() nên đi trong bootstrap, nơi nó được gọi trước khi kịch bản đăng nhập chạy và thực thi rememberMe(). Có suy nghĩ gì không? – Brian
Cung cấp cho nó một shot, dính vào cuộc gọi RememberMe ngay sau khi bắt đầu phiên. Nó không thể làm tổn thương thiết lập thời gian chờ ở đó vì bạn chưa thực sự xác thực – Mark