"The explosive growth of the GeoWeb and geographic information has made GIS powerful media for the general public to communicate, but perhaps more importantly, GIS have also become media for constructive dialogs and interactions about social issues." - Sui & Goodchild
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
geoinf15:postgis0 [2015/11/02 23:35] oertz |
geoinf15:postgis0 [2018/05/16 10:05] (current) |
||
---|---|---|---|
Line 2: | Line 2: | ||
Voyons comment utiliser l'extension PostGIS de PostgreSQL pour stocker et gérer de l'information géographique dans un SGBD. | Voyons comment utiliser l'extension PostGIS de PostgreSQL pour stocker et gérer de l'information géographique dans un SGBD. | ||
- | - Déploiement d'une application PHP/PGSQL+PostGIS avec OpenShift (https://www.openshift.com) | + | ===== Une première "geotable" ===== |
- | * Créer un compte OpenShift : https://openshift.redhat.com/app/account/new?then=%2Fapp%2Fconsole | + | * Créer une //géotable// |
- | * Suivre le lien "Create first application now" | + | <code> |
- | * Choisir le cartdrige PHP5.4 {{:geoinf15:screenshot_from_2015-11-02_23_33_09.png?nolink|}} | + | CREATE TABLE my4capitals (id serial PRIMARY KEY, name text); |
- | * Définir un nom de domaine rhcloud.com et le nom de préfixe correspondant à l'application (ex. //geoinf-oertz.rhcloud.com//) | + | SELECT AddGeometryColumn( 'my4capitals', 'the_geom', 4326, 'POINT', 2 ); |
- | * A la question "Change your code", répondre non | + | </code> |
- | * Depuis la web console et dans la configuration de l'application, ajouter le cartdrige PostgreSQL 9.2 | + | * Alimenter la table (cf. http://fr.wikipedia.org/wiki/Well-known_text) |
- | * Conserver les crédentials | + | <code> |
- | - Installer pgadmin : [url] | + | INSERT INTO my4capitals VALUES ( nextval('my4capitals_id_seq'), 'Paris', ST_GeometryFromText( 'POINT(2.333 48.867)', 4326)); |
- | - Installer le client tool rhc : [url] | + | INSERT INTO my4capitals VALUES ( nextval('my4capitals_id_seq'), 'Bern', ST_GeometryFromText( 'POINT(7.433 46.95)', 4326)); |
- | - Lancer une session rhc depuis une console OS : | + | INSERT INTO my4capitals VALUES ( nextval('my4capitals_id_seq'), 'Rome', ST_GeometryFromText( 'POINT(12.5 41.883)', 4326)); |
- | * Saisir : rhc setup | + | INSERT INTO my4capitals VALUES ( nextval('my4capitals_id_seq'), 'Madrid', ST_GeometryFromText( 'POINT(-3.71 40.41)', 4326)); |
- | * Valider le server name par défaut | + | </code> |
- | * Saisir votre login OpenShift et mot de passe | + | * Lire la table et ses données géographiques |
- | * A la question sur le token pour éviter la resaisie de mot de passe, répondre oui | + | <code> |
- | * A la question sur la paire de clés SSH, répondre oui | + | SELECT ST_AsEWKT(the_geom) FROM my4capitals; |
- | * Saisir : rhc port -forward *a myAppName | + | SELECT ST_AsText(the_geom) FROM my4capitals; |
- | - Lancer pgadmin | + | SELECT ST_AsGeoJSON(the_geom) FROM my4capitals; |
- | * Créer une connexion sur l'IP (et le port) forwardée par la commande ci -dessus pour PostgreSQL | + | </code> |
- | * Saisir les crédentials et se connecter | + | * Transformer des coordonnées d'une projection à une autre |
- | * Vérfier le nombre de tables dans la BD (normalement aucune) | + | <code> |
- | * Lancer la commande SQL : create extension postgis; | + | SELECT ST_AsEWKT(ST_Transform(the_geom, 21781)), ST_AsEWKT(the_geom) FROM my4capitals; |
- | * Vérifier le nombre de tables, de vues et de fonctions (normalement beaucoup) | + | </code> |
+ |