ADD: gestion des erreurs pour la connction et l'inscription (manque encore le sanitize)

master
Lucie Bedouret 2 years ago
parent 87163c1035
commit ba0806aab2

@ -3,30 +3,25 @@
class Validation {
static function val_connexion($usrName,$mdp,$dataVueEreur) {
if (!isset($usrName)||$usrName=="") {
$dataVueEreur[] ="Nom d'utilisateur manquant";
throw new Exception('pas de username');
$dataVueEreur[] ="Username or password missing";
}
$usrName = Validation::clear_string($usrName);
if($usrName == false){
$dataVueEreur[] = "Sanitizing error";
throw new Exception('sanitizing fail');
}
if (!isset($mdp)||$mdp=="") {
$dataVueEreur[] ="Mot de passe manquant";
throw new Exception('pas de password');
$dataVueEreur[] ="Username or password missing";
}
$mdp = Validation::clear_string($mdp);
if($mdp == false){
$dataVueEreur[] = "Sanitizing error";
throw new Exception('sanitizing fail');
}
return $dataVueEreur;
}
static function val_inscription($username,$pwd1,$pwd2,$dataVueEreur){
if (!isset($username)||$username==="") {
$dataVueEreur[] ="Nom d'utilisateur manquant";
throw new Exception('pas de username');
$dataVueEreur[] ="All fields are required";
}
$username = Validation::clear_string($username);
if($username == false){
@ -34,26 +29,21 @@
throw new Exception('sanitizing fail');
}
if (!isset($pwd1)||$pwd1==="") {
$dataVueEreur[] ="Mot de passe manquant";
throw new Exception('pas de password');
$dataVueEreur[] ="All fields are required";
}
$pwd1 = Validation::clear_string($pwd1);
if($pwd1 == false){
$dataVueEreur[] = "Sanitizing error";
throw new Exception('sanitizing fail');
}
if (!isset($pwd2)||$pwd2==="") {
$dataVueEreur[] ="Confirmation mot de passe manquant";
throw new Exception('pas de confirmation password');
$dataVueEreur[] ="All fields are required";
}
$pwd2 = Validation::clear_string($pwd2);
if($pwd2 == false){
$dataVueEreur[] = "Sanitizing error";
throw new Exception('sanitizing fail');
}
if($pwd1 !== $pwd2){
$dataVueEreur[]="Mot de passe et confirmation différents";
throw new Exception("Mot de passe et confirmation différents");
$dataVueEreur[]="Invalid confirmation";
}
return $dataVueEreur;
}

@ -122,6 +122,9 @@ class ControleurVisiteur {
$usrname=$_POST['login'];
$pwd=$_POST['mdp'];
$vues_erreur=Validation::val_connexion($usrname,$pwd,$vues_erreur);
if(!empty($vues_erreur)){
require($rep.$vues['connection']);
}
$model= new VisiteurModel();
if($model->existUser($usrname)){
if(password_verify($pwd,$model->getHashedPassword($usrname))){
@ -130,13 +133,13 @@ class ControleurVisiteur {
$this->reinit();
}
else{
$arrayErrorViews =array('username'=>$usrname,'password'=>$pwd);
require($rep.$vues['erreur']);
$vues_erreur =array('username'=>$usrname,'password'=>$pwd);
require($rep.$vues['connection']);
}
}
else{
$arrayErrorViews =array('username'=>$usrname,'password'=>$pwd);
require($rep.$vues['erreur']);
$vues_erreur =array('username'=>$usrname,'password'=>$pwd);
require($rep.$vues['connection']);
}
}
@ -145,12 +148,19 @@ class ControleurVisiteur {
$usrname=$_POST['username'];
$pwd=$_POST['password'];
$confirm=$_POST['confirmpassword'];
$model = new VisiteurModel();
$vues_erreur=Validation::val_inscription($usrname,$pwd,$confirm,$vues_erreur);
if($vues_erreur == []){
if($model->existUser($usrname)){
$vues_erreur[]="Username already taken";
}
if(empty($vues_erreur)){
$hash= password_hash($pwd,PASSWORD_DEFAULT);
$model = new VisiteurModel();
$model->inscription($usrname,$hash);
}
else{
require($rep.$vues['inscription']);
}
$_REQUEST['action']=null;
new ControleurVisiteur();
}

@ -10,6 +10,12 @@ h1{
margin-left: 5%;
}
#error{
margin-top: 5%;
margin-bottom: -5%;
margin-left: 29%;
}
#connectionForm{
background-color: #E4F8FF;
width: 50%;

@ -3,8 +3,8 @@
<head>
<title>Acceuil</title>
<link rel="stylesheet" href="<?=$styles['commun']?>"/>
<link rel="stylesheet" href="<?=$styles['acceuil']?>"/>
<link rel="stylesheet" href="styles/commonStyles.css"/>
<link rel="stylesheet" href="styles/acceuilStyles.css"/>
</head>
<body>

@ -2,8 +2,8 @@
<html>
<head>
<title>connection</title>
<link rel="stylesheet" href="<?=$styles['commun']?>"/>
<link rel="stylesheet" href="<?=$styles['connection']?>"/>
<link rel="stylesheet" href="styles/commonStyles.css"/>
<link rel="stylesheet" href="styles/connectionStyles.css"/>
</head>
<body>
<header>
@ -15,12 +15,15 @@
</header>
<div class="body">
<form method="POST" name="connectionForm" id="connectionForm">
<h4>Login</h4>
<h4>Username</h4>
<input type="text" name="login" required/>
<h4>Password</h4>
<input type="password" name="mdp" required/>
<br/>
<br/>
<?php
if(isset($vues_erreur)){
echo '<h4 id="error">Incorrect Username or Password</h4>';
}
?>
<input class="button" type="submit" value="Log In"/>
<input type="hidden" name="action" value="connection">
</form>

@ -2,8 +2,8 @@
<html>
<head>
<title>connection</title>
<link rel="stylesheet" href="<?=$styles['commun']?>">
<link rel="stylesheet" href="<?=$styles['connection']?>">
<link rel="stylesheet" href="styles/commonStyles.css"/>
<link rel="stylesheet" href="styles/connectionStyles.css"/>
</head>
<body>
<header>
@ -16,13 +16,17 @@
<div class="body">
<h2>Please enter all the informations :</h2>
<form method="POST" name="inscription" id="connectionForm">
<h4>Login</h4>
<h4>Username</h4>
<input type="text" name="username" required/>
<h4>Password</h4>
<input type="password" name="password" required/>
<h4>Confirm Password</h4>
<input type="password" name="confirmpassword" required/>
<br/>
<?php
if(isset($vues_erreur)){
echo '<h4 id="error">'.$vues_erreur[0].'</h4>';
}
?>
<input class="button" type="submit" value="Sign Up"/>
<input type="hidden" name="action" value="inscription"/>
</form>

Loading…
Cancel
Save