Files
geo/api/test_api_geo.php
Pierre 0687900564 fix: Récupérer l'opération active depuis la table operations
- Corrige l'erreur SQL 'Unknown column fk_operation in users'
- L'opération active est récupérée depuis operations.chk_active = 1
- Jointure avec users pour filtrer par entité de l'admin créateur
- Query: SELECT o.id FROM operations o INNER JOIN users u ON u.fk_entite = o.fk_entite WHERE u.id = ? AND o.chk_active = 1
2026-01-26 16:57:08 +01:00

59 lines
2.1 KiB
PHP
Executable File

<?php
/**
* Test rapide de l'API geo.api.gouv.fr
*/
echo "Test des différentes URLs de l'API geo.api.gouv.fr\n";
echo "=================================================\n\n";
$urls = [
"fields=contour" => "https://geo.api.gouv.fr/departements/22?fields=contour",
"geometry=contour" => "https://geo.api.gouv.fr/departements/22?geometry=contour",
"fields=contour,nom" => "https://geo.api.gouv.fr/departements/22?fields=contour,nom",
"fields=nom&geometry=contour" => "https://geo.api.gouv.fr/departements/22?fields=nom&geometry=contour",
];
$context = stream_context_create([
'http' => [
'timeout' => 10,
'header' => "User-Agent: Geosector/1.0\r\n"
]
]);
foreach ($urls as $type => $url) {
echo "Test : $type\n";
echo "URL : $url\n";
$response = @file_get_contents($url, false, $context);
if ($response === false) {
echo "✗ Erreur\n";
} else {
$data = json_decode($response, true);
echo "✓ Réponse reçue\n";
// Afficher les clés du premier niveau
echo "Clés : " . implode(', ', array_keys($data)) . "\n";
// Vérifier la présence du contour
if (isset($data['contour'])) {
echo "→ Contour présent (type: " . ($data['contour']['type'] ?? 'inconnu') . ")\n";
if (isset($data['contour']['coordinates'])) {
$coords = $data['contour']['coordinates'];
$pointCount = is_array($coords[0]) ? count($coords[0]) : count($coords);
echo "→ Nombre de points : $pointCount\n";
}
} elseif (isset($data['geometry'])) {
echo "→ Geometry présent (type: " . ($data['geometry']['type'] ?? 'inconnu') . ")\n";
if (isset($data['geometry']['coordinates'])) {
$coords = $data['geometry']['coordinates'];
$pointCount = is_array($coords[0]) ? count($coords[0]) : count($coords);
echo "→ Nombre de points : $pointCount\n";
}
} else {
echo "→ Pas de contour ou geometry\n";
}
}
echo "\n";
}