Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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

Printemps des cartes 2024

#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 chmm, 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

 

Pied de page des forums

Powered by FluxBB