Ajout de création de user (fonctionnel), de suppression d'user (fonctionnel), et envoi de log (fonctionnel mais pas implémenté)
This commit is contained in:
@@ -0,0 +1,74 @@
|
||||
<?php
|
||||
// Démarrage de la session pour vérifier les droits de l'utilisateur
|
||||
session_start();
|
||||
// Ajout de connexion à la BDD
|
||||
require_once("../functions/databaseConnection.php");
|
||||
|
||||
// Vérification que l'utilisateur est bien admin
|
||||
if (!isset($_SESSION["role"]) || $_SESSION["role"] != "admin") {
|
||||
header("Location: ../pages/home.php");
|
||||
exit();
|
||||
}
|
||||
|
||||
// Si le formulaire a été soumis
|
||||
if ($_SERVER["REQUEST_METHOD"] == "POST") {
|
||||
// Récupération des données du formulaire
|
||||
$user = $_POST["user"];
|
||||
$role = $_POST["role"];
|
||||
$passwd = $_POST["passwd"];
|
||||
|
||||
// Vérification que tous les champs sont remplis
|
||||
if ($user == "" || $role == "" || $passwd == "") {
|
||||
echo "Tous les champs doivent être remplis.";
|
||||
exit();
|
||||
} else {
|
||||
// Vérification que le rôle est valide (admin ou user)
|
||||
if ($role != "admin" && $role != "user") {
|
||||
echo "Le rôle doit être admin ou user.";
|
||||
exit();
|
||||
} else {
|
||||
try {
|
||||
// Requête SQL pour vérifier si le nom d'utilisateur existe déjà
|
||||
$sqlVerification = "SELECT * FROM users WHERE username = :username";
|
||||
$requeteVerification = $dbh->prepare($sqlVerification);
|
||||
$requeteVerification->execute([
|
||||
":username" => $user
|
||||
]);
|
||||
|
||||
$utilisateurExistant = $requeteVerification->fetch();
|
||||
|
||||
// Si l'utilisateur existe déjà, on affiche une erreur
|
||||
if ($utilisateurExistant) {
|
||||
echo "Ce nom d'utilisateur existe déjà.";
|
||||
exit();
|
||||
} else {
|
||||
// Génération de la date de création
|
||||
$dateCreation = date("Y-m-d H:i:s");
|
||||
|
||||
// Requête SQL d'insertion du nouvel utilisateur
|
||||
$sqlAjout = "INSERT INTO users (username, password, role, created_at) VALUES (:username, :password, :role, :created_at)";
|
||||
$requeteAjout = $dbh->prepare($sqlAjout);
|
||||
$requeteAjout->execute([
|
||||
":username" => $user,
|
||||
":password" => $passwd,
|
||||
":role" => $role,
|
||||
":created_at" => $dateCreation
|
||||
]);
|
||||
|
||||
// Redirection vers la page admin après succès
|
||||
header("Location: ../pages/admin.php");
|
||||
exit();
|
||||
}
|
||||
} catch (PDOException $e) {
|
||||
// En cas d'erreur PDO, affichage du message
|
||||
echo "Erreur pendant l'ajout de l'utilisateur : " . $e->getMessage();
|
||||
exit();
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// Si la requête n'est pas de type POST, redirection
|
||||
header("Location: ../pages/admin.php");
|
||||
exit();
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
// Démarrage de la session pour vérifier les droits de l'utilisateur
|
||||
session_start();
|
||||
// Ajout de connexion à la BDD
|
||||
require_once("../functions/databaseConnection.php");
|
||||
|
||||
// Vérification que l'utilisateur est bien admin
|
||||
if (!isset($_SESSION["role"]) || $_SESSION["role"] != "admin") {
|
||||
header("Location: ../pages/home.php");
|
||||
exit();
|
||||
}
|
||||
|
||||
// Récupération de l'ID passé en paramètre GET
|
||||
$id = $_GET["id"];
|
||||
|
||||
// Vérification que l'ID n'est pas vide
|
||||
if ($id == "") {
|
||||
echo "ID manquant.";
|
||||
exit();
|
||||
} else {
|
||||
try {
|
||||
// Requête SQL de suppression de l'utilisateur
|
||||
$sql = "DELETE FROM users WHERE id = :id";
|
||||
$requete = $dbh->prepare($sql);
|
||||
$requete->execute([
|
||||
":id" => $id
|
||||
]);
|
||||
|
||||
// Redirection vers la page admin après suppression
|
||||
header("Location: ../pages/admin.php");
|
||||
exit();
|
||||
} catch (PDOException $e) {
|
||||
// En cas d'erreur PDO, affichage du message
|
||||
echo "Erreur pendant la suppression : " . $e->getMessage();
|
||||
exit();
|
||||
}
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user