diff --git a/application/config/autoload.php b/application/config/autoload.php index d44d24f..a059dcd 100644 --- a/application/config/autoload.php +++ b/application/config/autoload.php @@ -58,7 +58,7 @@ | | $autoload['libraries'] = array('user_agent' => 'ua'); */ -$autoload['libraries'] = array('database', 'session'); +$autoload['libraries'] = array('database', 'session','form_validation'=>'valid'); /* | ------------------------------------------------------------------- diff --git a/application/config/config.php b/application/config/config.php index 58e1d3a..78e590f 100644 --- a/application/config/config.php +++ b/application/config/config.php @@ -23,7 +23,7 @@ | a PHP script and you can easily do that on your own. | */ -$config['base_url'] = 'http://localhost:1024/m-okapi/'; +$config['base_url'] = 'http://localhost/libs/projet/m-okapi/'; /* |-------------------------------------------------------------------------- diff --git a/application/config/routes.php b/application/config/routes.php index c414445..f6927ae 100644 --- a/application/config/routes.php +++ b/application/config/routes.php @@ -49,6 +49,6 @@ | Examples: my-controller/index -> my_controller/index | my-controller/my-method -> my_controller/my_method */ -$route['default_controller'] = 'mokapi'; +$route['default_controller'] = 'MOkapi'; $route['404_override'] = ''; $route['translate_uri_dashes'] = FALSE; diff --git a/application/controllers/Utilisateur.php b/application/controllers/Utilisateur.php index a9915a7..800e4be 100644 --- a/application/controllers/Utilisateur.php +++ b/application/controllers/Utilisateur.php @@ -15,57 +15,118 @@ public function form_authentification() public function nouvel_utilisateur() { - $nomcomplet = $this->input->post('nomcomplet'); - $email = $this->input->post('email'); - $login = $this->input->post('login'); - $mdp = $this->input->post('mdp'); - $mdpconf = $this->input->post('mdpconf'); + //====================Validation du nom et de l'adresse email====================== + $my_rules=array( + array( + 'field'=>'nomcomplet', + 'label'=>'Nom', + 'rules'=>'required', + 'errors'=>array( + 'required'=>'Le champ %s est oligatoire', + ) + ), + array( + 'field'=>'email', + 'label'=>'Email', + 'rules'=>array('required','valid_email','is_unique[utilisateur.email]'), + 'errors'=>array( + 'required'=>'Le champ %s est oligatoire', + 'valid_email'=>'adresse invalide', + 'is_unique'=>'Cette adresse existe deja' + ) + ) + + ); + $this->valid->set_rules($my_rules); + //=========Validation du login et des mots de passe=================================== + $this->valid->set_rules('login','Login','required|min_length[8]|is_unique[utilisateur.login]',array( + 'required'=>'Le champ %s est oligatoire', + 'min_length'=>'Le %s doit contenir au moins 8 caracteres', + 'is_unique'=>'Ce %s existe deja veuillez changer' + )); + //========Validation du mot de passe================================================== + $this->valid->set_rules('mdp','Mot de passe','required|min_length[8]',array( + 'required'=>'Le champ %s est oligatoire', + 'min_length'=>'Le %s doit contenir au moins 8 caracteres' + )); + //====Validation de la confirmation==================================================== + $this->valid->set_rules('mdpconf','Confirmation','required|matches[mdp]',array( + 'required'=>'Le champ %s est obligatpire', + 'matches'=>'la %s ne correspond pas au mot de passe' + )); + //====================================================================================== + if($this->valid->run()){ + $nomcomplet = $this->input->post('nomcomplet'); + $email = $this->input->post('email'); + $login = $this->input->post('login'); + $mdp = $this->input->post('mdp'); + $mdpconf = $this->input->post('mdpconf'); - $data = array( - 'nomcomplet' => $nomcomplet, - 'email' => $email, - 'login' => $login, - 'mdp' => $mdp, - 'etat' => FALSE - ); + $data = array( + 'nomcomplet' => $nomcomplet, + 'email' => $email, + 'login' => $login, + 'mdp' => $mdp, + 'etat' => FALSE + ); - $this->load->model('UtilisateurModel'); - $this->UtilisateurModel->creer_utilisateur($data); - - $this->load->view('utilisateur/inscription_success'); + $this->load->model('UtilisateurModel'); + $this->UtilisateurModel->creer_utilisateur($data); + + $this->load->view('utilisateur/inscription_success'); + + } + else{ + $this->form_inscription(); + } } public function connexion() { - $login = $this->input->post('login'); - $mdp = $this->input->post('mdp'); - $d = array( - 'login' => $login, - 'mdp' => $mdp - ); - - $this->load->model('UtilisateurModel'); - $r = $this->UtilisateurModel->check_authentification($d); - - if(count($r) > 0) - { - $user = $r[0]; + //=========Validation du login=================================== + $this->valid->set_rules('login','Login','required',array( + 'required'=>'Le champ %s est oligatoire', + + )); + //========Validation du mot de passe=============================== + $this->valid->set_rules('mdp','Mot de passe','required',array( + 'required'=>'Le champ %s est oligatoire', + )); + if($this->valid->run()){ + $login = $this->input->post('login'); + $mdp = $this->input->post('mdp'); $d = array( - 'id' => $user->id, - 'nomcomplet' => $user->nomcomplet, - 'is_connected' => true + 'login' => $login, + 'mdp' => $mdp ); - $this->session->set_userdata($d); - redirect('utilisateur/accueil'); + + $this->load->model('UtilisateurModel'); + $r = $this->UtilisateurModel->check_authentification($d); + + if(count($r) > 0) + { + $user = $r[0]; + $d = array( + 'id' => $user->id, + 'nomcomplet' => $user->nomcomplet, + 'is_connected' => true + ); + $this->session->set_userdata($d); + redirect('utilisateur/accueil'); + } + else + { + $d = array( + 'error_login' => 'Login ou mot de passe incorrect' + ); + $this->session->set_flashdata($d); + $this->form_authentification(); + } } - else - { - $d = array( - 'error_login' => 'Login ou mot de passe incorrect' - ); - $this->session->set_flashdata($d); + else{ $this->form_authentification(); } + } public function accueil() diff --git a/application/views/utilisateur/form_authentification.php b/application/views/utilisateur/form_authentification.php index 4f50e09..d719c0c 100644 --- a/application/views/utilisateur/form_authentification.php +++ b/application/views/utilisateur/form_authentification.php @@ -1,9 +1,11 @@

Authentification

Login: -
+ +
Mot de passe: -
+ +
session->error_login; diff --git a/application/views/utilisateur/form_inscription.php b/application/views/utilisateur/form_inscription.php index ec2ebd5..ef9ffba 100644 --- a/application/views/utilisateur/form_inscription.php +++ b/application/views/utilisateur/form_inscription.php @@ -1,15 +1,20 @@

Créer votre compte M-OKAPI

Nom complet: -
+ +
Email: -
+ +
Login: -
+ +
Mot de passe: -
+ +
Confirmer: -
+ +
J'ai déjà un compte \ No newline at end of file