5633969d98
Carte Leaflet (annuaire Éducation nationale) + API PHP/MySQL : fiche établissement (effectifs, IPS, population INSEE, DPE ADEME), GED documents/photos, commentaires par groupe, gestion utilisateurs et politique de mots de passe. Imports opendata (effectifs, IPS, population, DPE, IRIS). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
36 lines
1.2 KiB
PHP
36 lines
1.2 KiB
PHP
<?php
|
|
/**
|
|
* Historique de l'IPS (indice de position sociale) d'une école (1er degré).
|
|
* GET ?uai=UAI → [ { annee, ips, ips_dep }, ... ] trié par année croissante
|
|
* ips = IPS de l'établissement
|
|
* ips_dep = IPS moyen départemental (référence), ou null
|
|
*
|
|
* Source : dataset « fr-en-ips-ecoles-ap2022 » (cf. import_ips.php).
|
|
*/
|
|
declare(strict_types=1);
|
|
require __DIR__ . '/db.php';
|
|
|
|
try {
|
|
$uai = trim((string) ($_GET['uai'] ?? ''));
|
|
if ($uai === '') {
|
|
json_error('Paramètre uai requis.');
|
|
}
|
|
// La table peut être absente si l'import n'a pas encore été lancé.
|
|
if (!db()->query("SHOW TABLES LIKE 'ips'")->fetchColumn()) {
|
|
json_out([]);
|
|
}
|
|
$st = db()->prepare('SELECT annee, ips, ips_dep FROM ips WHERE uai = ? ORDER BY annee');
|
|
$st->execute([$uai]);
|
|
$out = [];
|
|
foreach ($st as $r) {
|
|
$out[] = [
|
|
'annee' => (int) $r['annee'],
|
|
'ips' => (float) $r['ips'],
|
|
'ips_dep' => $r['ips_dep'] !== null ? (float) $r['ips_dep'] : null,
|
|
];
|
|
}
|
|
json_out($out);
|
|
} catch (Throwable $e) {
|
|
json_error('Erreur : ' . $e->getMessage(), 500);
|
|
}
|