summaryrefslogtreecommitdiff
path: root/Database/meth_dbuser.php
diff options
context:
space:
mode:
Diffstat (limited to 'Database/meth_dbuser.php')
-rw-r--r--Database/meth_dbuser.php90
1 files changed, 57 insertions, 33 deletions
diff --git a/Database/meth_dbuser.php b/Database/meth_dbuser.php
index 1b62b46..ea5c66e 100644
--- a/Database/meth_dbuser.php
+++ b/Database/meth_dbuser.php
@@ -12,9 +12,8 @@ class DbUser extends DbMain {
// ****************************************************************************
// Gestion d'un utilisateur
// ****************************************************************************
-
// Enregistrement d'un nouvel utilisateur
- final public function user_register($email, $pass, $is_client, $is_pro, $is_admin) {
+ final public function user_register($email, $pass, $userStatus) {
// On vérifie si l'email existe deja dans la bdd
$exist = $this->check_exist_email($email);
// Si non
@@ -22,18 +21,18 @@ class DbUser extends DbMain {
// Chiffrement du pass
$crypt = $this->crypt_pass($pass);
// Préparation de la requète
- $reqAddUser = "INSERT INTO ".$this->tableUserAccount."
- (email, password, inscriptionDate, isClient, isPro, isAdmin)
+ $reqAddUser = "
+ INSERT INTO
+ ".$this->tableUserAccount."
+ (email, password, inscriptionDate, userStatus)
VALUES
- (?, ?, ?, ?, ?, ?)";
+ (?, ?, ?, ?)";
// Execution de la requète
$this->exec_cmd($reqAddUser,
array($email,
$crypt,
date("Y-m-d H:i:s"),
- $is_client,
- $is_pro,
- $is_admin
+ $userStatus
)
);
// Retourne 1 pour réussite
@@ -47,8 +46,13 @@ class DbUser extends DbMain {
// Vérification de la combinaison email - pass pour authentification
final public function user_check_credential($email, $pass) {
// Préparation de la requète pour récupérer les infos ou l'email est présent
- $reqCheckCredential = "SELECT userId, password
- FROM ".$this->tableUserAccount." WHERE email = ? ";
+ $reqCheckCredential = "
+ SELECT
+ userId, password
+ FROM
+ ".$this->tableUserAccount."
+ WHERE
+ email = ? ";
// Chiffrement du mot de passe
$crypt = $this->crypt_pass($pass);
// Execution de la requète
@@ -67,24 +71,30 @@ class DbUser extends DbMain {
// J'ai préféré faire deux requètes distinctes et ne pas utiliser des valeurs
// passées par $POST ($key => $value) pour gérer les noms des colonnes
// car je préfère les passer en "dur" dans mes requêtes (risque d'injection SQL?).
- $reqAddInfoClient = "UPDATE ".$this->tableUserInfo."
- SET
- lastname = ?, firstname = ?, phoneNumber = ?,
- adress = ?, zipCode = ?, city = ?
- WHERE
- userId = ?";
- $reqAddInfoPro = "UPDATE ".$this->tableUserInfo."
- SET
- lastname = ?, firstname = ?, phoneNumber = ?,
- adress = ?, zipCode = ?, city = ?,
- degree = ?, capability = ?, description = ?
- WHERE
- userId = ?";
- $reqAddInfoProJobs = "INSERT INTO ".$this->tableUserJob."
+ $reqAddInfoClient = "
+ REPLACE INTO
+ ".$this->tableUserInfo."
+ (lastname, firstname, phoneNumber,
+ adress, zipCode, city, userId)
+ VALUES
+ (?, ?, ?, ?, ?, ?, ?)";
+ $reqAddInfoPro = "
+ REPLACE INTO
+ ".$this->tableUserInfo."
+ (lastname, firstname, phoneNumber,
+ adress, zipCode, city, degree,
+ capability, description, userId)
+ VALUES
+ (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
+ $reqAddInfoProJobs = "
+ INSERT INTO
+ ".$this->tableUserJob."
(jobCategoryId, userId)
VALUES
(?, ?)";
- $reqRemoveInfoProJobs = "DELETE FROM ".$this->tableUserJob."
+ $reqRemoveInfoProJobs = "
+ DELETE FROM
+ ".$this->tableUserJob."
WHERE
jobCategoryId = ?
AND
@@ -95,7 +105,7 @@ class DbUser extends DbMain {
// Pour passer de dict a list -> array_values()
$args = array_values($userInfos);
array_push($args, $userId);
- $this->exec_cmd($reqAddInfoClient, array_push($args, $userId));
+ $this->exec_cmd($reqAddInfoClient, $args);
} else {
// TODO: Commenter
// https://stackoverflow.com/questions/15986235/how-to-use-json-stringify-and-json-decode-properly
@@ -118,12 +128,16 @@ class DbUser extends DbMain {
// ****************************************************************************
// Gestion du token-autologin
// ****************************************************************************
-
// Vérification de la combinaison email - jeton d'auto-login pour authentification
final public function autologin_token_check($email, $token) {
// Préparation de la requète pour récupérer les infos ou l'email est présent
- $reqCheckToken = "SELECT userId, tokenAutoLogin
- FROM ".$this->tableUserAccount." WHERE email = ?";
+ $reqCheckToken = "
+ SELECT
+ userId, tokenAutoLogin
+ FROM
+ ".$this->tableUserAccount."
+ WHERE
+ email = ?";
// Exécution de la requète
$result = $this->exec_cmd($reqCheckToken, array($email))->fetchAll(PDO::FETCH_ASSOC);
// Vérifiaction de correspondance email & jeton d'auto-connection
@@ -137,8 +151,13 @@ class DbUser extends DbMain {
// Mise à jour du jeton d'auto-login
final public function autologin_token_update($email, $token) {
// Préparation de la requète pour mise à jour du jeton d'auto-connection
- $reqUpdateToken = "UPDATE ".$this->tableUserAccount." SET tokenAutoLogin = ?
- WHERE email = ?";
+ $reqUpdateToken = "
+ UPDATE
+ ".$this->tableUserAccount."
+ SET
+ tokenAutoLogin = ?
+ WHERE
+ email = ?";
// Execution de la requète
$this->exec_cmd($reqUpdateToken, array($token, $email))->fetchAll(PDO::FETCH_ASSOC);
}
@@ -146,8 +165,13 @@ class DbUser extends DbMain {
// Supression du jeton d'auto-login
final public function autologin_token_delete($email) {
// Préparation de la requète pour supression du jeton d'auto-connection
- $reqDeleteToken = "UPDATE ".$this->tableUserAccount." SET tokenAutoLogin = NULL
- WHERE email = ?";
+ $reqDeleteToken = "
+ UPDATE
+ ".$this->tableUserAccount."
+ SET
+ tokenAutoLogin = NULL
+ WHERE
+ email = ?";
// Execution de la requète
$this->exec_cmd($reqDeleteToken, array($email))->fetchAll(PDO::FETCH_ASSOC);
}