我無法在cakePHP 2.4中登錄用戶,請參閱我創建此文檔的文檔。它說已成功登錄,並且也重定向到目標URL(用戶/登錄操作),但$this->Auth->username
和$this->Auth->password
保持空白,沒有會話被創建。嘗試使用錯誤的憑據登錄時,它也會被重定向。並且還告訴我登錄成功了。我現在無能爲力。在cakePHP中進行身份驗證2.4
AppController.php
class AppController extends Controller {
public $components = array(
'Session',
'DebugKit.Toolbar',
'Auth' => array(
'loginAction' => array('controller' => 'users', 'action' => 'login', 'plugin' => false),
'loginRedirect' => array('controller' => 'users', 'action' => 'loggedin'),
'logoutRedirect' => array('controller' => 'users', 'action' => 'loggedout'),
'authError' => 'UNABLE TO LOG IN.'
)
);
public function beforeFilter(){
$this->Auth->userModel = 'User';
$this->Auth->fields = array('username' => 'username', 'password' => 'password');
$this->Auth->allow('index','display','login','show_reg_form', 'view','signup');
}
}
UsersController.php
我只粘貼登錄功能:
public function login() {
if ($this->request->is('post')) {
if($this->Auth->login(/*$this->request->data*/)){
$this->Session->setFlash(__('Successfully logged in.'));
return $this->redirect($this->Auth->redirectUrl());
} else {
$this->Session->setFlash(__('Invalid username or password, try again'));
}
}
}
login.ctp
相關部分是:
<div class="container-login users form">
<?php echo $this->Form->create('User');
echo $this->Form->input('username');
echo $this->Form->input('password');
echo $this->Form->end(__('Login',true));?>
</div>
'__('Login',true)'應該是__('Login')'。這不再是蛋糕1.3了。 – mark
您是否將參數傳遞給$ this-> Auth-> login?或者你在這裏評論他們? –
我沒有通過他們,因爲當我上次取消評論時,我可以登錄任何內容。我讀過文檔,它應該沒有指定的參數。 –