banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 01 November 2016 19:29

FANIVE
Juste Inscrit !
Date d'inscription: 16 Feb 2015
Messages: 1

Comment charger une couche shapefile de postgis pour Leaflet ou Openla

Bonsoir à tous chers développeur,
Je travaille sur la mise en place d'un WEBSIG j'ai donc pour missions de developper une petite appli. seulement je ne parviens pas à charger mes couches initialement stocker dans ma BD. j'aimerais que quelqu'un m'aide à charger la couche de Postgis vers l'un des 2 de preference Leaflet. mais si quelqu'un peut aussi m'aider en Openlayers je suis prenant. Merci.........
j'attends une reaction rapide que ce soit ici ou à cette addresse: stevenoukimi@texte-a-enlever.gmail.com
Merci encore

Hors ligne

 

#2 Tue 01 November 2016 20:19

PA
Membre
Lieu: Paris
Date d'inscription: 5 Sep 2005
Messages: 3259
Site web

Re: Comment charger une couche shapefile de postgis pour Leaflet ou Openla

Bonsoir,

Il vous manque une brique : un serveur SIG OGC (geoserver ou mapserver).
C'est lui qui va lire la donnée dans PostGIS pour la servir en WMS/WFS.

Vous ne pourrez pas lire du postgis directement.


Pierre-André Le Ny
Modérateur QGIS, Données, Coin de l'OpenSource
Aidez l'association GeoRezo !

Hors ligne

 

#3 Tue 01 November 2016 21:25

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: Comment charger une couche shapefile de postgis pour Leaflet ou Openla

Bonjour,

Je rajouterai Mapnik si vous ne souhaitez pas avoir un serveur OGC en générant les tuiles. Mais il faut bien comprendre ce domaine (service OGC, serveur de tuiles).

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#4 Wed 02 November 2016 10:19

Delu
Participant actif
Lieu: Briançon
Date d'inscription: 29 Apr 2008
Messages: 76

Re: Comment charger une couche shapefile de postgis pour Leaflet ou Openla

Bonjour,
Si vous souhaitez récupérer des données vecteurs dans postgis, il est possible d'utiliser le format geojson. Postgis et PHP peuvent vous faire ça.
Voici un exemple de code à adapter à votre contexte :

Code:

<?php
$serveur = "localhost"; 
$user = "monuser";
$passe = "monpass"; 
$base = "mabase";
$dbconnect = pg_connect("host=$serveur dbname=$base user=$user password=$passe") 
    or die('Connexion impossible : ' . pg_last_error()); 

header('Content-type: application/json');

$query = "SELECT meschamps, st_asgeojson(s.the_geom) AS geometry FROM matable;";
$rs = pg_query($dbconnect, $query) or die("La requete suivante ne peut pas etre executee : $query\n");

//Construction du GeoJSON
$geojson = array(
    'type'      => 'FeatureCollection',
    'features'  => array()
);

while ($row = pg_fetch_assoc($rs)) {
    
    $geometry = json_decode($row['geometry']);
    //On enlève les propriétés des géométries
    unset($row['geometry']);
    $properties = $row;        
    $feature = array(
        'type' => 'Feature'
        ,'properties' => $properties
        ,'geometry' => $geometry
    );
    // on push la feature
    array_push($geojson['features'], $feature);
}

echo json_encode($geojson);

?>

Dans leaflet appeler l'url du fichier php et définir le type de couche en geoJson.
Bonne journée

Hors ligne

 

Pied de page des forums

Powered by FluxBB