<?php
//Header de type texte
header('Content-type: text/html; charset=UTF-8');
//Paramètres de connexion à la BDD PgSQL
require('connect.php');
$chco = "host=".$pg_hote." dbname=".$pg_base_de_donnees." user=".$pg_utilisateur." password=".$pg_mot_de_passe;
//Requête SQL pour récupérer les centres des départements et les données de population, en joignant les deux tables
$sql = "SELECT dep, departements.nom_dept, pop07, pop99, pop90, pop82, st_astext(st_centroid(st_transform(departements.the_geom, 27572))) as coords FROM popdepts, departements where popdepts.dep = departements.code_dept order by pop07 desc";
//Requête SQL pour récupérer les valeurs max.
$sqlm = "SELECT max(pop07), max(pop99) FROM popdep2007";
//Sélection de la valeur max.
$maxval = max($resultm[0
], $resultm[1
]);
//Calcul du coefficient de réduction des valeurs pour affichage, par rapport à la valeur max.
if ($maxval > 0) {
$coef = 10
/ sqrt($maxval); } else {
$coef = 1;
}
//Génération de la chaîne GeoJSON
$str = '';
$str .= '{
"type": "FeatureCollection",
"features": [';
$i = 1;
$coords = substr($result['coords'], 5
, strlen($result['coords'])-1
); $pdelim = strpos($coords, ' '); $long = substr($coords, 1
, $pdelim - 1
); $lat = substr($coords, $pdelim + 1
, (strlen($coords) - $pdelim) - 2
); $str .= '{
"geometry": {
"type": "Point",
"coordinates": ['.$long.','.$lat.']
},
"id": '.$i++.',
"type": "Feature",
"bbox": ['.$long.','.$lat.','.$long.','.$lat.'],
"properties": {
"codgeo": "'.$result['dep'].'",
"nom": "'.$result['nom_dept'].'",
"pop07": '.$result['pop07'].',
"pop99": '.$result['pop82'].',
"pop90": '.$result['pop90'].',
"pop82": '.$result['pop99'].',
"t2007": '.round(sqrt($result['pop07']) * $coef, 2).', "t1999": '.round(sqrt($result['pop99']) * $coef, 2).', "t1990": '.round(sqrt($result['pop90']) * $coef, 2).', "t1982": '.round(sqrt($result['pop82']) * $coef, 2).' }
},';
}
$str2 .= ']}';
//La chaîne GeoJSON est prête, on l'écrit sur la sortie standard, en réponse à l'appel du script PHP.
echo $str2;
//Fermeture de la connexion PgSQL.
?>