J ai fait le UserGateway (possible qu il lui manque des méthodes), la classe TacheGateway est à refaire(je peut le faire), les problèmes que je rencontre sont :Faut-il l attribut id dans les classe, l attribut mot de passe pour l utilisateur comment hasher et dehasher le mdp et comme faire le frontController! Du coup je poserais des question aux profs! (Si t tout lu t un goat)

pull/11/head
Emre KARTAL 2 years ago
parent 7b4d66976a
commit f2d0dd6e54

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 17 KiB

@ -4,19 +4,39 @@ namespace modeles;
class Tache class Tache
{ {
private string $id;
private string $nom; private string $nom;
private string $description; private string $description;
private Date $dateCreation; private Date $dateCreation;
private bool $estValide; private bool $estValide;
private Utilisateur $createur;
private int $id;
public function __construct(String $nom, string $description, Date $dateCreation,Utilisateur $createur, int $id){ public function __construct(string $id, string $nom, string $description, Date $dateCreation){
$this->id = $id;
$this->nom = $nom; $this->nom = $nom;
$this->description = $description; $this->description = $description;
$this->dateCreation = $dateCreation; $this->dateCreation = $dateCreation;
$this->estValide = false; $this->estValide = false;
$this->createur = $createur;
} }
//Nom
public function getNom(){
return $this->nom;
}
//Description
public function getDescription(){
return $this->description;
}
//DateCreation
public function getDateCreation(){
return $this->dateCreation;
}
//EstValide
public function getEstValide(){
return $this->estValide;
}
}

@ -1,14 +1,11 @@
<?php <?php
require_once 'Tache.php';
require_once 'Utilisateur.php';
class TacheGateway{ class TacheGateway{
private $con; private $con;
public function __construct(Connection $con){ public function __construct(Connection $con){
$this->con=$con; $this->con=$con;
} }
public Tache function Ajouter($nom, $description, Date $dateCreation, Utilisateur $createur){ public function Ajouter($nom, $description, Date $dateCreation, Utilisateur $createur){
$query='INSERT INTO Tache VALUES($nom, $description, dateCreation, $createur)'; $query='INSERT INTO Tache VALUES($nom, $description, dateCreation, $createur)';
} }
@ -20,8 +17,8 @@ class TacheGateway{
public function Supprimer(Tache $tache){ public function Supprimer(Tache $tache){
$query='DELETE FROM Tache WHERE utilisateur=:utilisateur AND nom=:nom AND id=:id'; $query='DELETE FROM Tache WHERE utilisateur=:utilisateur AND nom=:nom';
$this->con->executeQuery($query, array('utilisateur' => array($tache->createur, PDO::PARAM_INT),'nom' => array($tache->nom, PDO::PARAM_STRING), 'id' => array($tache->id, PDO::PARAM_INT))); $this->con->executeQuery($query, array('utilisateur' => array($tache->createur, PDO::PARAM_INT),'nom' => array($tache->nom, PDO::PARAM_STRING)));
} }
} }
?> ?>

@ -4,22 +4,64 @@ namespace modeles;
class Utilisateur class Utilisateur
{ {
private int $id; private string $id;
private string $nom; private string $nom;
private string $prenom; private string $prenom;
private string $pseudo private string $pseudo;
private string $email; private string $email;
private string $motDePasse;
private bool $isAdmin;
public function __construct(string $nom, string $prenom, string $pseudo, string $email,string $motDePasse, bool $isAdmin, int $id){ public function __construct(string $id, string $nom, string $prenom, string $pseudo, string $email,string $motDePasse, bool $isAdmin){
$this->nom = $nom; $this->id = $id;
$this->nom = $nom;
$this->prenom = $prenom; $this->prenom = $prenom;
$this->pseudo = $pseudo; $this->pseudo = $pseudo;
$this->email = $email; $this->email = $email;
$this->motDePasse = $motDePasse;
$this->isAdmin = $isAdmin;
$this->id = id;
} }
//Nom
public function getId(){
return $this->id;
}
public function setId(string $id){
$this->nom = $id;
}
//Nom
public function getNom(){
return $this->nom;
}
public function setNom(string $nom){
$this->nom = $nom;
}
//Prenom
public function getPrenom(){
return $this->prenom;
}
public function setPrenom(string $prenom){
$this->prenom = $prenom;
}
//Pseudo
public function getPseudo(){
return $this->pseudo;
}
public function setPseudo(string $pseudo){
$this->pseudo = $pseudo;
}
//mail
public function getMail(){
return $this->email;
}
public function setEmail(string $email){
$this->email = $email;
}
} }
?> ?>

@ -0,0 +1,24 @@
<?php
class UtilisateurGateway{
private $con;
public function __construct(Connection $con){
$this->con=$con;
}
public function CreerUtilisateur(string $nom,string $prenom, string $pseudo, string $email, string $mdp){
$query='INSERT INTO ToDoList_Utilisateur(nom,prenom,pseudo,email,motDePasse) values (:nom,:prenom,:pseudo,:email,:mdp);';
$this->con->executeQuery($query, array(
'nom' => array($nom, PDO::PARAM_STRING),
'prenom' => array($prenom, PDO::PARAM_STRING),
'pseudo' => array($pseudo, PDO::PARAM_STRING),
'email' => array($email, PDO::PARAM_STRING),
'mdp' => array($mdp, PDO::PARAM_STRING)));
}
public function Supprimer(Utilisateur $user){
$query='DELETE FROM ToDoList_Utilisateur WHERE id=:id;';
$this->con->executeQuery($query, array(
'id' => array($user->getNom(), PDO::PARAM_STRING)));
}
}
?>

@ -6,7 +6,6 @@
<link rel="shortcut icon" href="./Vue/Images/gif.gif" type="../Images/gif"> <link rel="shortcut icon" href="./Vue/Images/gif.gif" type="../Images/gif">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Login Page</title> <title>Login Page</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
<link rel="stylesheet" href="./Vue/css/style.css"> <link rel="stylesheet" href="./Vue/css/style.css">
<link rel="stylesheet" href="./Vue/css/reset.css"> <link rel="stylesheet" href="./Vue/css/reset.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@48,300,0,0" /> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@48,300,0,0" />

@ -73,6 +73,9 @@
<div class="actions"> <div class="actions">
<button class="orange">Se déconnecter</button> <button class="orange">Se déconnecter</button>
</div> </div>
<div class="actions">
<button class="orange">Supprimer le compte</button>
</div>
</div> </div>
</body> </body>
</html> </html>
Loading…
Cancel
Save