Cakephp2.5.5:身份验证不会登录用户
我已经创建了一个应用程序,其中我使用AuthComponent进行用户身份验证 它工作得很好 但我已经创建了一个函数,它使用用户数据登录用户,如下所示Cakephp2.5.5:身份验证不会登录用户,php,cakephp,cakephp-2.3,Php,Cakephp,Cakephp 2.3,我已经创建了一个应用程序,其中我使用AuthComponent进行用户身份验证 它工作得很好 但我已经创建了一个函数,它使用用户数据登录用户,如下所示 protected function __login_user($conditions) { $this->User->recursive = -1; $userData = $this->User->find('first', array('condtions' => $conditions));
protected function __login_user($conditions) {
$this->User->recursive = -1;
$userData = $this->User->find('first', array('condtions' => $conditions));
unset($userData['User']['password']);
if( !empty( $userData ) ) {
$this->Auth->login($userData['User']);
return true;
} else {
return false;
}
}
当我使用ajax登录时,这个函数可以正常工作
但如果是http请求,则post/get的工作方式为:
它将我重定向到登录重定向链接,只显示一次用于验证的会话
当我刷新页面时,会话将丢失并注销
有人知道为什么会发生这种情况吗?您的函数在php中声明为
受保护的
,并且由于它的名称(
)中至少包含一个下划线字符,因此它是蛋糕的“私有”字符,不能使用。试试这个返回$this->Auth->login(。仍然不起作用。此功能只需登录任何用户即可。我从可访问函数调用它。用户可以访问Like登录功能。但在某些情况下,比如说facebook,我会获取用户的数据,条件是facebook id,然后登录用户。此函数只返回true或false。尽管它是受保护的或私有的,但我们可以在同一个类中访问它。我只在同一个班级上课。