1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| public function connexionAction(){
if($this->_request->isPost()){
$request = $this->getRequest();
//UTILISATION D'UN FILTRE PERMETTANT DE SUPPRIMER TOUTES LES BALISES HTML ET PHP
$f = new Zend_Filter_StripTags();
$fl_login = $f->filter($request->getPost('fl_login'));
$fl_password = $f->filter($request->getPost('fl_password'));
$fl_souvenir = $f->filter($request->getPost('fl_souvenir'));
$f = NULL;
if($fl_login != '' && $fl_password != ''){
$comptePerso = new Application_Espaceperso_Model_ComptePerso();
$id_login = $comptePerso->login($fl_login, $fl_password, true);
if($id_login){
//CRÉÉ LA SESSION DANS LE ZEND_REGISTRY ET REDIRIGE VERS L'ACTION D'ACCUEIL DU COMPTE PERSO
if($fl_souvenir == '1'){
$session_login_expire = $this->session_login;
//SI LA PERSONNE SOUHAITE RESTER CONNECTÉ ON MODIFIE LA DURÉE D'EXPIRATION DE L'ESPACE DE NOM (1 SEMAINE)
$session_login_expire->setExpirationSeconds(60*60*24*7);
}
$this->session_login->id_login = $id_login;
$this->session_flag = true;
$this->_redirect('espaceperso/espaceperso/accueilconnecte');
}
else{
//RETOURNE UNE ERREUR 'IDENTIFIANT INCONNU'
$msg_error = array('error_form_cnx' => 'La combinaison email et mot de passe est incorrectes.');
$this->_forward('accueilnonconnecte', NULL, NULL, $msg_error);
}
}
else{
//RETOURNE UNE ERREUR 'UN DES CHAMPS N'A PAS ÉTÉ SAISIE'
$msg_error = array('error_form_cnx' => 'Au moins un des champs n\'a pas été renseigné, vous devez indiquer votre identifiant et votre mot de passe.');
$this->_forward('accueilnonconnecte', NULL, NULL, $msg_error);
}
}
else{
if($this->session_flag) $this->_redirect('espaceperso/espaceperso/accueilconnecte');
else $this->_redirect('espaceperso/espaceperso/accueilnonconnecte');
}
} |
Partager