#1 Fri 27 April 2007 12:48
- amel_kenz
- Juste Inscrit !
- Date d'inscription: 27 Apr 2007
- Messages: 4
Afficher une carte avec Mapserver
Bonjour je voudrait afficher des cartes a partir de ma base Postgresql/Postgis;
Pour ceci j'ai commencé par :
1) Importer tout les shapes dont je disposait dans ma base de données;
2) Insltaller le serveur Web Apache 2.0;
3) Installer PHP5;
4) Installer le serveur cartographique mapserver
Pour l'instalaltion de mapserver j'ai télécharger la version "mapserver-4.6.1-win32-php5.1.1_c2c" et j'ai copier tous les (.exe) dans le cgi-bin de Apache.
Pour etre sur que mapserver est bien installé j'ai fait ce teste (avec un shape se trouvant ds un dossier (shape) placer dans le meme repértoire que les fichiers suivants ):
1) Création de mapfile : "simple.map" :
Code:
MAP NAME "Region" SIZE 400 400 STATUS ON EXTENT -31.2467 27.6065 40.1199 80.762 UNITS METERS SHAPEPATH "/shape" WEB IMAGEPATH 'E:/mapserver/tmp/ms_tmp/' IMAGEURL '/ms_tmp/' END LAYER NAME "Region" TYPE POLYGON STATUS ON DATA "Region" CLASS STYLE COLOR 20 10 110 OUTLINECOLOR 200 200 200 END END END END
2) Création de la page HMTL : "simple.html"
Code:
<?php dl('php_mapscript_46'); $map = ms_newMapObj("simple.map"); $image=$map->draw(); $image_url=$image->saveWebImage(); ?> <HTML> <HEAD> <TITLE>Example : Afficher un shp</TITLE> </HEAD> <BODY> <IMG SRC=<?php echo $image_url; ?> > </BODY> </HTML>
La probléme est que je ne sais vraiment pas si ces 2 pages il fallait les mettre dans un endroits précis car quand j'éssaie d'ouvrir la page HTML elle m'affiche ceci :
draw(); $image_url=$image->saveWebImage(); ?> >
Je ne sais pas si le probléme vient de l'installation de mapserver qui n'est pas compléte ou de ma façon d'appeler les cartes...
Nb : J'ai éssayer de placer ces 2 fichiers dans le dossiers htdocs de Apache mais ca ne marche tj pas;
Merci pour votre aide...
Hors ligne
#2 Fri 27 April 2007 14:01
- Mobilotek
- Participant occasionnel
- Lieu: Toulouse
- Date d'inscription: 17 Oct 2006
- Messages: 26
Re: Afficher une carte avec Mapserver
salut,
si tu veux pas te prendre la tête, et etre sur du resultat, télécharge ms4w, dedans, tout ce qui est nécessaire y est.
copie le à la racine de c, et lance l'exec apache-install, et ça roule!
rien qu'a lancer http://localhost/cgi-bin/mapserv.exe, tu sauras si mapserver est opé.
il doit te retourner:"No query information to decode. QUERY_STRING is set, but empty. "
conseil:
si tu veux un test simple pour voir si ton mapfile marche, tappes cette adresse dans l'url de ton navigateur:
http://ton_ip(locale)/cgi-bin/mapserv.exe?map=chemin/en/dur/vers/mapfile/quetuplaces/oùtuveux/map.map&mode=map
Dernière modification par Mobilotek (Fri 27 April 2007 14:04)
Hors ligne
#3 Fri 27 April 2007 16:20
- amel_kenz
- Juste Inscrit !
- Date d'inscription: 27 Apr 2007
- Messages: 4
Re: Afficher une carte avec Mapserver
Merci beaucoups j'ai vraiment pu l'installer mais je n'arrive pas a voir ma carte pourtant (j'ai vérifier mapserver est bien installé,php/mapscript et apache aussi grace a votre idée).
Maintenant je tape ceci dans le navigateur : http://localhost/cgi-bin/mapserv.exe?map=E:/simple.map&mode=map (vu que j'ai placer mes 2 fichiers (simple.map et simple.html) sur le E: il m'affiche une page vide.
et quand j'éssaie d'ouvrir le fichier html avec le navigateur il me donne cette erreur :
draw(); $image_url=$image->saveWebImage(); ?> >
Merci pour votre réponse peut etre l'erreur vient de la syntaxe dans l'un des fichiers?
Hors ligne
#4 Fri 27 April 2007 18:27
- amel_kenz
- Juste Inscrit !
- Date d'inscription: 27 Apr 2007
- Messages: 4
Re: Afficher une carte avec Mapserver
Merci pour votre aide j'ai ésayer avec la connection a postgis et ca a marche je vait maintenant attaquer les zoom, déplacement et autre, merci je met donc le code qui m'a permis d'afficher la carte "region":
Code:
MAP EXTENT 547293 1703209.875 801423 1997767.125 IMAGECOLOR 255 255 255 IMAGETYPE png SIZE 500 579.540491087239 WEB IMAGEPATH "/tmp/ms_tmp" IMAGEURL "/tmp/" END # # Couche des communes # LAYER NAME "region" CONNECTION "user=postgres dbname=testgis2 password=passer host=localhost" CONNECTIONTYPE POSTGIS DATA "the_geom from region" STATUS DEFAULT TYPE POLYGON CLASS STYLE COLOR 255 255 255 OUTLINECOLOR 0 0 0 END END END END
Hors ligne
#5 Fri 27 April 2007 19:39
- amel_kenz
- Juste Inscrit !
- Date d'inscription: 27 Apr 2007
- Messages: 4
Re: Afficher une carte avec Mapserver
Bonjour me revoila en fait j'arrive a afficher la carte a partir du fichier test3.map comme vous me l'avez indiquer tout a l'heure, mais pas en appelant la page php qui m'affiche une page vide pourtant j'ai tapper le code suivant dans ma page HTML :
Code:
<?php dl('php_mapscript'); # $map_path="E:\ms4w\Apache\htdocs\"; $map = ms_newMapObj("test3.map"); $image=$map->draw(); $image_url=$image->saveWebImage(MS_PNG,1,1,0); ?> <HTML> <HEAD> <TITLE>Example 1: Displaying a map</TITLE> </HEAD> <BODY> <IMG SRC=<?php echo $image_url; ?> > </BODY> </HTML>
Nb : La page (test3.php est placé dans le memde dossier que test3.map) qui est le "htdocs" de Apache, en l'appelant je tape alors dans le navigateur : http://localhost/test3.php
Je ne comprend vraiment pas pourtant j'ai tout éssayer mais ca bloque toujours???
Hors ligne