Aller au contenu

PHP : Exemple pour une application de gestion de congès

<?php
    // Connexion à la base de données
    $dsn = 'mysql:host=localhost;dbname=leave_management';
    $username = 'root';
    $password = '';
    $options = array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION);
    try {
        $db = new PDO($dsn, $username, $password, $options);
    } catch (PDOException $e) {
        echo 'Connexion échouée : ' . $e->getMessage();
    }
    // Récupération des données de la demande de congé
    $employeeId = $_POST['employeeId'];
    $startDate = $_POST['startDate'];
    $endDate = $_POST['endDate'];
    $reason = $_POST['reason'];
    // Insertion des données dans la base de données
    $query = "INSERT INTO leaves (employee_id, start_date, end_date, reason) VALUES (:employeeId, :startDate, :endDate, :reason)";
    $statement = $db->prepare($query);
    $statement->bindValue(':employeeId', $employeeId);
    $statement->bindValue(':startDate', $startDate);
    $statement->bindValue(':endDate', $endDate);
    $statement->bindValue(':reason', $reason);
    $statement->execute();
    // Redirection vers la page de confirmation
    header("Location: leave_submitted.php");
?>

Ce script PHP utilise la connexion à la base de données pour enregistrer les données d’une demande de congé. Il utilise le système de gestion de bases de données PDO pour se connecter à la base de données et insérer les données dans la table appropriée. Il utilise également les variables $_POST pour récupérer les données saisies dans un formulaire HTML.

Il est important de noter que ce script est très simple et ne comprend pas de sécurité pour éviter les injection SQL ou encore la vérification des données. Il est recommandé de l’utiliser comme exemple simple pour démarrer, mais il sera nécessaire d’ajouter des vérifications et des sécurités pour un utilisation en production.

Il y a beaucoup de possibilité pour améliorer cette application, vous pouvez par exemple:

Ajouter des vérifications pour s’assurer que les dates de début et de fin sont valides
Ajouter un système de gestion des utilisateurs pour vérifier que l’utilisateur a le droit de poser un congé
Ajouter une gestion des conflits de congés pour vérifier qu’un employé n’a pas déjà posé le méme jour

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *