From de7487f0018d3bc3e8addc33e4057152fec2d591 Mon Sep 17 00:00:00 2001 From: beaulaton Date: Wed, 23 Oct 2024 15:16:01 +0200 Subject: [PATCH] =?UTF-8?q?Update=20des=20donn=C3=A9es=20de=20l'utilisateu?= =?UTF-8?q?r=20dans=20la=20bdd=20(manque=20le=20model)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/script/user.php | 44 ++++++++++++++++++++++--- public/script/userGateway.php | 62 ++++++++++++++++++++++++++++++++++- 2 files changed, 101 insertions(+), 5 deletions(-) diff --git a/public/script/user.php b/public/script/user.php index 194d951..a46562c 100644 --- a/public/script/user.php +++ b/public/script/user.php @@ -36,19 +36,55 @@ class User{ } } +//include("userGateway.php"); +//$result = donneeUser('U003'); + + +// ============================================ En attente du Model ============================================ include("Connection.php"); -$dsn = "pgsql:host=londres;dbname="; -$username = ""; -$password = ""; +$dsn = "pgsql:host=londres;dbname=dblebeaulato"; +$username = "lebeaulato"; +$password = "MaSQL:2004!"; $con = new Connection($dsn,$username,$password); $query = 'SELECT * FROM Users WHERE id_user=:idUser'; -$con->executeQuery($query, array(':idUser'=>array('U001', PDO::PARAM_STR))); +$con->executeQuery($query, array(':idUser'=>array('U003', PDO::PARAM_STR))); $result = $con->getResults(); $u = new User($result[0]['id_user'],$result[0]['username'], $result[0]['pssword'], '../../images/imageProfil.png', $result[0]['email']); /*Test*/ + +//UPDATE username User +$query = 'UPDATE Users SET username=:newUsername WHERE id_user=:idUser'; +$con->executeQuery($query, array(':idUser'=>array('U003', PDO::PARAM_STR), ':newUsername'=> array('Hello', PDO::PARAM_STR))); +$queryReponse = 'SELECT username FROM Users WHERE id_user=:idUser'; + +$con->executeQuery($queryReponse, array(':idUser'=>array('U003', PDO::PARAM_STR))); +$result = $con->getResults(); +$u->username = $result[0]['username']; /*Test*/ + + +//UPDATE email User +$query = 'UPDATE Users SET email=:newEmail WHERE id_user=:idUser'; +$con->executeQuery($query, array(':idUser'=>array('U003', PDO::PARAM_STR), ':newEmail'=> array('Sinper42Gamer@gmail.com', PDO::PARAM_STR))); +$queryReponse = 'SELECT email FROM Users WHERE id_user=:idUser'; + +$con->executeQuery($queryReponse, array(':idUser'=>array('U003', PDO::PARAM_STR))); +$result = $con->getResults(); +$u->email = $result[0]['email']; /*Test*/ + +//UPDATE passwd User +$query = 'UPDATE Users SET pssword=:newPassWd WHERE id_user=:idUser'; +$con->executeQuery($query, array(':idUser'=>array('U003', PDO::PARAM_STR), ':newPassWd'=> array('TestMotDePasssse', PDO::PARAM_STR))); + +$queryReponse = 'SELECT pssword FROM Users WHERE id_user=:idUser'; +$con->executeQuery($queryReponse, array(':idUser'=>array('U003', PDO::PARAM_STR))); +$result = $con->getResults(); +$u->passwd = $result[0]['pssword']; /*Test*/ + +// ================================================================================================================ + function hidenPassWd(string $passwd){ if(strlen($passwd) >= 16) return str_repeat('*', 16); return str_repeat('*', strlen($passwd)); diff --git a/public/script/userGateway.php b/public/script/userGateway.php index 6549956..f392d24 100644 --- a/public/script/userGateway.php +++ b/public/script/userGateway.php @@ -39,7 +39,67 @@ Class UserGateway{ return $result; } + public function donneeUser(string $id):array{ + $query = 'SELECT * FROM Users WHERE id_user=:idUser'; + $this->con->executeQuery($query, array(':idUser'=>array($id, PDO::PARAM_STR))); + $result = $this->con->getResults(); + return $result; + } + + // ===================== UPDATE FUNCTION ===================== + + public function updateUsername(string $id, string $newUsername):array{ + //Update le nom du user passé en paramètre + $queryUpdate = 'UPDATE Users SET username=:newUsername WHERE id_user=:idUser'; + $this->con->executeQuery($queryUpdate, array(':idUser'=>array($id, PDO::PARAM_STR), ':newUsername'=> array($newUsername, PDO::PARAM_STR))); + + //Renvoie le nouveau nom du user + $queryReponse = 'SELECT username FROM Users WHERE id_user=:idUser'; + $this->con->executeQuery($queryReponse, array($id=>array($newUsername, PDO::PARAM_STR))); + return $result; + } + + public function updateEmail(string $id, string $newEmail):array{ + //Update le email du user passé en paramètre + $queryUpdate = 'UPDATE Users SET email=:newEmail WHERE id_user=:idUser'; + $this->con->executeQuery($queryUpdate, array(':idUser'=>array($id, PDO::PARAM_STR), ':newEmail'=> array($newEmail, PDO::PARAM_STR))); + + //Renvoie le nouveau email du user + $queryReponse = 'SELECT email FROM Users WHERE id_user=:idUser'; + $con->executeQuery($queryReponse, array(':idUser'=>array($id, PDO::PARAM_STR))); + $result = $con->getResults(); + return $result; + } + + public function updateImg(string $id, string $newImg):array{ + //Update l'image du user passé en paramètre + $query = 'UPDATE Users SET img=:newImg WHERE id_user=:idUser'; + $this->con->executeQuery($query, array(':idUser'=>array($id, PDO::PARAM_STR), ':newImg'=> array($newImg, PDO::PARAM_STR))); + + //Renvoie la nouvelle image du user + $queryReponse = 'SELECT img FROM Users WHERE id_user=:idUser'; + $con->executeQuery($queryReponse, array(':idUser'=>array($id, PDO::PARAM_STR))); + $result = $this->con->getResults(); + return $result; + } + + public function updatePasswd(string $id, string $newPassWd):array{ + //Update le passwd du user passé en paramètre + $query = 'UPDATE Users SET pssword=:newPassWd WHERE id_user=:idUser'; + $this->con->executeQuery($query, array(':idUser'=>array($id, PDO::PARAM_STR), ':newPassWd'=> array($newPassWd, PDO::PARAM_STR))); + + //Renvoie le nouveau passwd du user + $queryReponse = 'SELECT pssword FROM Users WHERE id_user=:idUser'; + $con->executeQuery($queryReponse, array(':idUser'=>array($id, PDO::PARAM_STR))); + $result = $this->con->getResults(); + return $result; + } + } -$uG = new UserGateway(new Connection("pgsql:host=londres;dbname=dbkekentin","kekentin","")); + + + +//$uG = new UserGateway(new Connection("pgsql:host=londres;dbname=dbkekentin","kekentin","")); +$uG = new UserGateway(new Connection("pgsql:host=londres;dbname=dblebeaulato","lebeaulato","")); $uG->delete(2); ?> \ No newline at end of file