Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour je suis entrain de développer un intranet avec ZF dans une collectivité.
Il y a des agents qui ont le meme nom de famille et le login / mot de passe sur l'intranet se fait via le nom et le prenom pour le moment.
J'avais fait le tuto sur developpez.com dont voici le code :
if ($this->_request->isPost()) {
// collect the data from the user
Zend_Loader::loadClass('Zend_Filter_StripTags');
$f = new Zend_Filter_StripTags();
$username = $f->filter($this->_request->getPost('username'));
$password = $f->filter($this->_request->getPost('password'));
if (empty($username)) {
$this->view->message = 'Veuillez saisir un login';
} else {
// setup Zend_Auth adapter for a database table
Zend_Loader::loadClass('Zend_Auth_Adapter_DbTable');
$dbAdapter = Zend_Registry::get('dbAdapter');
$authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter);
$authAdapter->setTableName('utilisateur');
$authAdapter->setIdentityColumn('login');
$authAdapter->setCredentialColumn('pass');
// Set the input credential values to authenticate against
$authAdapter->setIdentity($username);
$authAdapter->setCredential($password);
// do the authentication
$auth = Zend_Auth::getInstance();
$result = $auth->authenticate($authAdapter);
if ($result->isValid()) {
// success: store database row to auth's storage
// system. (Not the password though!)
$data = $authAdapter->getResultRowObject(null, 'pass');
$auth->getStorage()->write($data);
$this->_redirect('/admin');
} else {
// failure: clear database row from session
$this->view->message = 'Identification invalide';
}
}
}
$this->view->title = "Identification";
$this->render();
}Ce code marche mais le probleme est que si j'ai 2 login pareil l'identification ne se fait pas et je voudrai que ca puisse le faire....
MErci
Hors ligne
Bjour,
L'identification se fait avec le nom.prenom et le password non ? donc si leurs pass sont différents, il n'y a pas de probleme normalement ?
A la limite, tu peut rendre unique les ID, quand tu crée le compte tu vérifie si ce login existe deja, si c'est le cas, tu peut rajouter un 1 à la fin, ou quelque chose du genre
Hors ligne
ouai au pire je ferai ca
Hors ligne