2012-12-18 57 views
0

我做什麼修復認證CakePHP的

CakePHP的版本是2.2.3

我用的菜譜,這部分創建我的身份驗證:鏈接 後,我完了,我改變了字段電子郵件地址和密碼(在AppController.php):

public $components = array(
     'Session', 
     'Auth' => array(
      'authenticate' => array(
       'Form' => array('userModel' => 'User', 'fields' => array('username' => 'email', 'password' => 'password')) 
      ), 
      'loginRedirect' => array('controller' => 'twitter', 'action' => 'index'), 
      'logoutRedirect' => array('controller' => 'users', 'action' => 'login'), 
      'authorize' => array('Controller') 
     ) 
    ); 

發生了什麼事

當我使用我的憑證登錄時,它會將我重定向到登錄頁面,即使憑據不正確!

我希望有人能幫助我解決這個問題。 在此先感謝!

編輯: 現在登錄,盡我所能看到!但註銷不起作用。它不會刪除我的會話。

+1

這是預期的行爲:如果您的憑據不正確,則它會將您重定向到登錄頁面以糾正它們。或者我錯過了什麼? –

+0

對不起,我的意思是它重定向到'loginRedirect'。所以到/ twitter/index – GuidovTricht

回答

1

你正在傳遞一些信息給$this->Auth->login($something)。這些代碼已經改變,因爲1.x和東西傳遞給此方法將導致要記錄的用戶

你應該叫$this->Auth->login()不帶參數

+0

它在UsersController中被調用時沒有參數: 'public function login(){this-> layout ='login'; ($ this-> Auth-> login()){this-> redirect($ this-> Auth-> redirect())如果($ this-> request->是('post')){ ); } else { $ this-> Session-> setFlash(__('wingertwoord的Ongeldig email adres。Probeer het AUB opnieuw')); } } }' – GuidovTricht