Files
ASPIC/statuts.php
T
2026-08-28 20:47:44 +02:00

49 lines
1.6 KiB
PHP

<?php
/**
* ASPIC — statuts.php
* Table de référence ASP_Statuts (liée à ASP_Contacts via CNT_Statut =
* STA_Code, lien applicatif, sans contrainte FOREIGN KEY SQL — voir journal
* de développement, section 2).
*
* GET seul : ASP_Statuts est une table gérée à la main via phpMyAdmin, pas de
* création depuis l'application (contrairement à ASP_Professions).
*
* ⚠️ Session utilisateur intégrée le 24 août 2026 (voir journal, section 14) :
* accès réservé aux utilisateurs identifiés (`$_SESSION['USR_Code']`, ouverte
* par `aspic.php`).
*/
session_start();
header('Content-Type: application/json; charset=utf-8');
require __DIR__ . '/db.php';
if (empty($_SESSION['USR_Code'])) {
http_response_code(401);
echo json_encode(['error' => 'Non identifié — veuillez vous connecter.']);
exit;
}
if ($_SERVER['REQUEST_METHOD'] !== 'GET') {
http_response_code(405);
echo json_encode(['error' => 'Méthode non autorisée']);
exit;
}
try {
$pdo = getDbConnection();
} catch (PDOException $e) {
http_response_code(500);
echo json_encode(['error' => 'Connexion base de données impossible']);
exit;
}
try {
// Tri par STA_Incr (ordre de création/incrément), pas par libellé —
// demande explicite de Jean-Marc du 24 août 2026.
$stmt = $pdo->query('SELECT STA_Code, STA_Libellé FROM ASP_Statuts ORDER BY STA_Incr ASC');
echo json_encode(['statuts' => $stmt->fetchAll()]);
} catch (PDOException $e) {
http_response_code(500);
echo json_encode(['error' => 'Erreur base de données : ' . $e->getMessage()]);
}