Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php // Connection à la base de données
- try {
- $dbconn=new PDO("pgsql:host='postgresql-marine27-11.alwaysdata.net'; dbname='marine27-11_hotel';user='marine27-11';password='Marine27Peslier'") or die('Connexion impossible');
- $dbconn->exec("SET CHARACTER SET utf8");
- $dbconn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
- // S'il existe un problème de connection, on obtient le message d'erreur
- } catch(PDOException $erreur) {
- $erreur->getMessage(); // Supprimer en production
- echo 'erreur';
- }
- if($dbconn){
- $sqlCount="SELECT gid FROM matable";
- $reqCount=$dbconn->prepare($sqlCount);
- $reqCount->execute();
- $nbObjet=$reqCount->rowCount();
- if($nbObjet>0){
- // Exécution de la requête SQL GeoJSON
- foreach($sql='SELECT*FROM mabase' (json_build_object(
- 'type', 'FeatureCollection',
- 'crs', json_build_object(
- 'type', 'name',
- 'properties', json_build_object(
- 'id','latitude','longitude')),
- 'features', json_agg(
- json_build_object(
- 'type', 'Feature',
- 'id', gid,
- 'geometry', ST_AsGeoJSON(geom)->json,
- 'properties', json_build_object(
- 'latitude','longitude'
- )
- )
- )
- )
- )AS feature
- FROM (
- SELECT * FROM matable
- ) inputs
- ) features;
- $req=$dbconn->prepare($sql);
- $req->execute();
- $data=$req->fetch();
- if($data){
- $objet_geosjon=$data('objet_geosjon');
- // Ouverture du fichier en écriture
- $fichier = fopen("matable.geojson", "w") or die("Problème d'ouverture de fichier");
- // Ecriture du résultat de la requête
- if(fwrite($fichier, $objet_geosjon)){
- echo "Le fichier GeoJSON a été construit correctement!";
- }else{
- echo "Un problème s'est déroulé lors de l'écriture du fichier.";
- }
- // Fermeture du fichier
- fclose($fichier);
- }else{
- echo "Un problème s'est déroulé lors du chargement de la donnée.";
- }
- }
- ?>
Add Comment
Please, Sign In to add comment