로그인 양식 :Zend_Auth 여러 자격 증명?
$authAdapter = Zend_Registry::get('authAdapter');
$authAdapter
->setIdentity($formData['email'])
->setCredential($password)
->setCredential(1);
부트 스트랩 :
protected function _initAuth(){
$this->bootstrap('db');
$this->bootstrap('session');
$db = $this->getPluginResource('db')->getDbAdapter();
$auth = Zend_Auth::getInstance();
$authAdapter = new Zend_Auth_Adapter_DbTable($db, 'User', 'email', 'password', 'enabled');
Zend_Registry::set('authAdapter', $authAdapter);
return $authAdapter;
}
내가 제거하는 경우는, 작동이 중지 '활성화'를 추가 분명히 이후 :
->setCredential(1);
와 '활성화'거기에서 :
($db, 'User', 'email', 'password', 'enabled');
잘 작동합니다 ...
사용 계정이있는 사용자 만 로그인 할 수 있습니다.
편집 :
$authAdapter = new Zend_Auth_Adapter_DbTable($db, 'User', 'email', 'password', '(?) AND `enabled` = 1');
작품 : 당신은 너무처럼 어댑터를 수정해야
이 작동하지 않았다에 추가 조건을 설정할 수 있습니다. 사실 나는 'AND' enabled' ='1 ''을 'AND jimmy = blah'로 변경했고, 여전히 로그인하여, 그 마지막 필드를 무시했다고 믿습니다! – azz0r
첫 번째 게시물보기 : \t \t $ authAdapter = new Zend_Auth_Adapter_DbTable ($ db, 'User', '이메일', 'password', '(?) AND'enabled'= 1 '); – azz0r
어때? $ authAdapter = new Zend_Auth_Adapter_DbTable ($ db, 'User', 'email', 'password'); 다음 $ select = $ authAdapter-> getDbSelect(); $ select-> where ('enabled = 1'); $ authAdapter-> authenticate(); ZF 버전을 사용하고 계십니까? thx –