autenticação zend
Olá Pessoal,
Estou criando uma autenticação num aplicativo feito em ZEND utilizando o código a seguir:
public function loginAction()
{
$this->_helper->viewRenderer->setNoRender();
$dbAdapter = Zend_Db_Table_Abstract::getDefaultAdapter();
$authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
$authAdapter->setTableName('usuario')
->setIdentityColumn('email')
->setCredentialColumn('senha');
$authAdapter->setIdentity($this->_getParam('email'))
->setCredential($this->_getParam('senha'))
->setCredentialTreatment('? and ativo="sim"');
$result = $authAdapter->authenticate();
//Verifica se a autenticação foi válida
if($result->isValid()){
$usuario = $authAdapter->getResultRowObject();
$storage = Zend_Auth::getInstance()->getStorage();
$storage->write($usuario);
$this->_redirect('index');
}else{
$this->_redirect('autenticacao/falha');
}
}
Estou usando como username o email.
O problema é que na tabela tem algumas pessoas com cadastros repetidos, com emails iguais e senhas diferentes. O sistema permite e a tabela já está assim.
Quando a gente seta a identity já estamos falando que o campo é único. Aí o zend não reconhece e dá falha na autenticação.
Como posso fazer o login neste caso (com emails iguais)?
Discussão (1)
Carregando comentários...