Ajout des experiences pro (fonctionnel)

This commit is contained in:
Esteban
2026-06-03 18:32:59 +02:00
parent 4eeb0d7dfc
commit 2e3ac1718b
6 changed files with 237 additions and 3 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
<?php
session_start();
require_once 'databaseConnection.php';
require_once '../functions/databaseConnection.php';
// Pour faire cette fonction l'utilisateur doit être administrateur
if (!isset($_SESSION['role']) || $_SESSION['role'] !== 'admin') {
+56
View File
@@ -0,0 +1,56 @@
<?php
session_start();
require_once '../functions/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'] ?? '';
$xptype = $_POST['xptype'] ?? '';
$tags = $_POST['tags'] ?? '';
$description = $_POST['description'] ?? '';
$duration = $_POST['duration'] ?? '';
$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 la nouvelle experience
$stmt = $dbh->prepare('INSERT INTO experiences (title, xptype, tags, description, duration, image_url) VALUES (:title, :xptype, :tags, :description, :duration, :image_url)');
// On execute la requete préparée
$stmt->execute([
':title' => $title,
':xptype' => $xptype,
':tags' => $tags,
':description' => $description,
':duration' => $duration,
':image_url' => $image_url
]);
// Redirection vers xp.php ds que la requete est executée
header('Location: ../pages/xp.php');
exit;
} catch (PDOException $e) {
// En cas d'erreur :
echo "Erreur pendant l'ajout de l'experience : " . $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/xp.php');
exit;
}
?>