Distinctation des scripts et fonctions
This commit is contained in:
@@ -1,52 +0,0 @@
|
||||
<?php
|
||||
session_start();
|
||||
require_once 'databaseConnection.php';
|
||||
|
||||
// Pour faire cette fonction l'utilisateur doit être administrateur
|
||||
if (!isset($_SESSION['role']) || $_SESSION['role'] !== 'admin') {
|
||||
header('Location: ../pages/home.php');
|
||||
exit;
|
||||
}
|
||||
|
||||
// La requête doit être un POST sinon on l'a refuse
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
|
||||
// Récupération des données dans la requete POST
|
||||
$title = $_POST['title'] ?? '';
|
||||
$tags = $_POST['tags'] ?? '';
|
||||
$description = $_POST['description'] ?? '';
|
||||
$image_url = $_POST['image_url'] ?? '';
|
||||
|
||||
// On vérifie que les champs obligatoires ne sont pas vide
|
||||
if (!empty($title) && !empty($description) && !empty($image_url)) {
|
||||
try {
|
||||
// On prépare la requête SQL pour insérer le nouveau projet
|
||||
$stmt = $dbh->prepare('INSERT INTO projects (title, tags, description, image_url) VALUES (:title, :tags, :description, :image_url)');
|
||||
|
||||
// On execute la requete préparée
|
||||
$stmt->execute([
|
||||
':title' => $title,
|
||||
':tags' => $tags,
|
||||
':description' => $description,
|
||||
':image_url' => $image_url
|
||||
]);
|
||||
|
||||
// Redirection vers projects.php ds que la requete est executée
|
||||
header('Location: ../pages/projects.php');
|
||||
exit;
|
||||
|
||||
} catch (PDOException $e) {
|
||||
// En cas d'erreur :
|
||||
echo "Erreur pendant l'ajout du projet: " . $e->getMessage();
|
||||
exit;
|
||||
}
|
||||
} else {
|
||||
echo "Veuillez remplir tous les champs obligatoires.";
|
||||
exit;
|
||||
}
|
||||
} else {
|
||||
// Si on y accède de façon peu légitime sans requête POST on refuse
|
||||
header('Location: ../pages/projects.php');
|
||||
exit;
|
||||
}
|
||||
?>
|
||||
@@ -1,59 +0,0 @@
|
||||
<?php
|
||||
|
||||
// Verification de l'utilisateur voir si ces ids sont bon ou pas
|
||||
|
||||
// On démarre une session au cas où le script soit exécuté directement par URL
|
||||
session_start();
|
||||
|
||||
// Ajout de connexion a la bdd
|
||||
require_once('./databaseConnection.php');
|
||||
|
||||
// La requête doit être un POST sinon on l'a refuse
|
||||
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
|
||||
header('Location: ./../pages/login.php');
|
||||
exit;
|
||||
}
|
||||
|
||||
// On récupère les champs envoyé par le post et on les nettoie
|
||||
$username = trim($_POST['id'] ?? '');
|
||||
$password = trim($_POST['passwd'] ?? '');
|
||||
|
||||
// Si les champs sont vides on renvoie vers Login.php : Prévoir dans le futur une erreur
|
||||
if (empty($username) || empty($password)) {
|
||||
header('Location: ./../pages/login.php');
|
||||
exit;
|
||||
}
|
||||
|
||||
// On regarde si l'utilisateur est dans la base de donnée sinon ça ne sert a rien de traiter
|
||||
try {
|
||||
$stmt = $dbh->prepare('SELECT id, username, password, role FROM users WHERE username = :username LIMIT 1');
|
||||
$stmt->execute([':username' => $username]);
|
||||
$user = $stmt->fetch();
|
||||
|
||||
} catch (PDOException $e) {
|
||||
error_log('Erreur sql dans la requête : ' . $e->getMessage());
|
||||
header('Location: ./../pages/login.php');
|
||||
exit;
|
||||
}
|
||||
|
||||
// On regarde si le mdp correspond à celui en bdd
|
||||
if (!$user || $user['password'] !== $password) {
|
||||
header('Location: ./../pages/login.php');
|
||||
exit;
|
||||
}
|
||||
|
||||
// Si la connexion est ok, on entregistre l'utilisateur dans $_SESSION
|
||||
$_SESSION['user_id'] = $user['id'];
|
||||
$_SESSION['username'] = $user['username'];
|
||||
$_SESSION['role'] = $user['role'];
|
||||
|
||||
// Date de connexion mise à jour
|
||||
try {
|
||||
$stmt = $dbh->prepare('UPDATE users SET last_login = NOW() WHERE id = :id');
|
||||
$stmt->execute([':id' => $user['id']]);
|
||||
} catch (PDOException $e) {
|
||||
error_log('Le serveur WEB ne peut pas modifier la date de dernière connexion : ' . $e->getMessage());
|
||||
}
|
||||
|
||||
//Redirection vers home.php puisque que l'utilisateur est forcément connecté
|
||||
header('Location: ./../pages/home.php');
|
||||
@@ -1,14 +0,0 @@
|
||||
<?php
|
||||
|
||||
// Lorsque l'utilisateur est renvoyé à cette page/fonction, il est déconnecté
|
||||
|
||||
|
||||
// Démarrage de session
|
||||
session_start();
|
||||
|
||||
// Destruction des variables de session
|
||||
$_SESSION = array();
|
||||
session_destroy();
|
||||
|
||||
// Redirection de l'utilisateur vers home.php
|
||||
header('Location: ../index.php');
|
||||
Reference in New Issue
Block a user