我一直在與此戰鬥一段時間。我有一個需要身份驗證的CakePHP 2.0應用程序,由於它必須使用另一種語言,我用'用戶名'和'密碼'約定離開了automagic'User'並創建了自己的數據庫表:CakePHP 2.0 Auth登錄無效
utilizatori('id', 'nume', 'parola')
在我AppController的我有以下定義了,如果我理解正確的應該覆蓋默認的CakePHP協會和使其使用我的新結構:
class AppController extends Controller {
var $components = array('Session',
'Auth' => array('Form' => array(
'userModel' => 'Utilizator',
'fields' => array('username' => 'nume', 'password' => 'parola'),
'loginAction' => array('controller' => 'utilizatori', 'action' => 'login'),
'loginRedirect' => array('controller' => 'categorii', 'action' => 'admin_index'))));
function beforeFilter() { }
}
在我UtilizatoriController我有以下登錄福nction:
function login()
{
$this->layout = 'admin';
debug($this->data);
debug(Security::hash($this->data['Utilizator']['parola']));
debug($this->Auth->login());
/*more here but don't think it's important*/
的數據調試出現與預期值,讓我們假設:
**data['Utilizator']['nume']** = 'Cosmin'
**data['Utilizator']['parola']** = 'Cosmin'
的密碼哈希調試產生這也是我手動在數據庫中插入期望的散列和但登錄函數返回false。
我不確定下一步該做什麼以及任何反饋意見。 另外,有沒有辦法訪問發送到$ this-> Auth-> login()?
謝謝