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 Mon 06 July 2009 15:52

smile
Participant actif
Date d'inscription: 2 Jul 2009
Messages: 110

[MapServer/CartoWeb3] Problème affichage via CartoWeb3

Salut la communauté,

Je reviens vers vous pour vous exposer un nouveau probleme!

Je me suis penché sur cartoweb pour gerer l'affichage de ma carte, et je rencontre a nouveau de petits problemes.

L'installation s'est apparement bien passé, j'ai créé un nouveau projet a partir d'un "SampleProject", jusqu'a la tout va bien.

Par contre la carte ne s'affiche pas (fond blanc), mais ce qui est bizard c'est que les coordonnées ont l'air correct, ainsi que l'echelle, on peut meme selectionner les couches dans une boite de dialogue. (Cf image.)

[img]http://img406.imageshack.us/img406/116/sampley.jpg[/img]

Je me demande si cartoweb a du mal a se connecter a la BDD Oracle qui contient les données (meme s'il me semble que cela soit gerré par mapserver)?

Je vous joint egalement le Mapfile qui va avec (peut etre l'erreur vient de lui?)


Code:

MAP
  NAME "smile"
  EXTENT        ****** ****** ****** *******
  IMAGETYPE PNG
  IMAGECOLOR 255 255 255
  STATUS ON
  UNITS METERS
  FONTSET "fonts.txt"
  SYMBOLSET "symbols.txt"
  #SHAPEPATH "data"

  
    PROJECTION
        "init=epsg:27571"   ##required
    END
  
  
    OUTPUTFORMAT
        NAME png
        DRIVER "AGG/png"
        MIMETYPE "image/png"
        IMAGEMODE RGB
        EXTENSION "png"
        FORMATOPTION QUALITY=80
    END
 
 
  REFERENCE
    IMAGE images/keymap_france.png
    EXTENT 876010 158100 887250 168300
    STATUS ON
    COLOR -1 -1 -1
    OUTLINECOLOR 200 0 0
    SIZE 224 150
  END

  
  SCALEBAR
    POSTLABELCACHE TRUE
    STYLE 0
    UNITS kilometers
    SIZE 350 3
    TRANSPARENT TRUE
    COLOR 77 77 88
    IMAGECOLOR 242 255 195
    BACKGROUNDCOLOR 222 222 222
    LABEL
      TYPE BITMAP
      SIZE SMALL
      COLOR 0 0 0
      POSITION UR
      BUFFER 10
    END
  END

  
  LEGEND
    KEYSIZE 20 15
  END

  ##########
  # LAYERS #
  ##########
  
    LAYER
        NAME "commune"
        TYPE POLYGON
        STATUS DEFAULT
        #DUMP TRUE
        CONNECTIONTYPE oraclespatial
        CONNECTION "*****/******@****"
        DATA "GEOMETRY FROM CADA.COMMUNE"
        PROCESSING "CLOSE_CONNECTION=DEFER"
        CLASS
            EXPRESSION ('[IDCOM]' == '57463')
            STYLE
                COLOR 240 240 240
                OUTLINECOLOR 0 0 0
            END
        END
    END     
    
    
    
    LAYER
        NAME "voifer"
        TYPE LINE
        STATUS DEFAULT
        #DUMP TRUE
        CONNECTIONTYPE oraclespatial
        CONNECTION "*****/*****@****"
        DATA "GEOMETRY FROM CADA.H_VOIFER"
        PROCESSING "CLOSE_CONNECTION=DEFER"
        CLASS             
            STYLE
                COLOR 170 187 187
            END
        END 
    END

    
    
    LAYER
        NAME "voirie"
        TYPE POLYGON
        STATUS DEFAULT
        #DUMP TRUE
        CONNECTIONTYPE oraclespatial
        CONNECTION "*****/*****@****"
        DATA "GEOMETRY FROM CADA.H_VOIRIE"
        PROCESSING "CLOSE_CONNECTION=DEFER"
        CLASS     
            STYLE
                COLOR 255 255 255
            END
            
            LABEL
                COLOR  0 0 0
                OUTLINECOLOR 255 255 255
                OUTLINEWIDTH 3
                FONT arial
                TYPE truetype
                POSITION UR   
                PARTIALS TRUE
            END 
        END
    END    # Layer
    
    
    LAYER
        NAME "bati"
        TYPE POLYGON
        STATUS DEFAULT
        #DUMP TRUE
        CONNECTIONTYPE oraclespatial
        CONNECTION "*****/*****@****"
        DATA "GEOMETRY FROM CADA.Batidur"
        PROCESSING "CLOSE_CONNECTION=DEFER"
        CLASS             
            STYLE
                COLOR 187 187 187
            END
        END 
    END    # Layer
    
    
    LAYER
        NAME "riviere"
        TYPE POLYGON
        STATUS DEFAULT
        #DUMP TRUE
        CONNECTIONTYPE oraclespatial
        CONNECTION "*****/*****@****"
        DATA "GEOMETRY FROM CADA.H_RIVIER"
        PROCESSING "CLOSE_CONNECTION=DEFER"
        CLASS             
            STYLE
                COLOR 190 210 255
            END
        END 
    END
    
    LAYER
        NAME "arbre"
        TYPE POINT
        STATUS DEFAULT
        #DUMP TRUE
        CONNECTIONTYPE oraclespatial
        CONNECTION "*****/*****@****"
        DATA "GEOMETRY FROM CADA.H_ARBRE"
        PROCESSING "CLOSE_CONNECTION=DEFER"
        CLASS 
            STYLE
                COLOR 50 190 100
            END
        END 
    END    
  
  ##############
  # END LAYERS #
  ##############

  
END

Voila, en esperant que vous puissez m'aider!

Merci

wink

Hors ligne

 

#2 Mon 06 July 2009 15:57

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

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Quelles sont les couches activées par défaut ? Quelles sont celles que tu as tentés d'affiché ?

La liste déroulante permet de choisir la couche sur laquelle recentrer la carte via un id d'un objet de la couche. Donc inutile pour afficher une couche. Par contre l'onglet Thème peut être intéressant !

Tu peux aussi regarder les logs de cartoweb, mapserver ou apache.

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

 

#3 Mon 06 July 2009 16:40

smile
Participant actif
Date d'inscription: 2 Jul 2009
Messages: 110

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Salut Y.,

Il me semble que toutes les couches sont activées, en tout cas mon but c'est de les afficher toutes.

Il faut peut etre faire une manip' pour les activer? (peut dans le layer.ini,mais des que j'y touche ca fait planter le tout).

Dans l'onglet "theme" il y a une checkbox ou j'ai uniquement le choix de cocher "root". Apparement rien ne se passe que je coche celui-ci et que je  clique sur "refresh".



Je vais aller jeter un coup d'oeil du coté des "logs"!


et encore merci pour ton aide!

wink

Hors ligne

 

#4 Tue 07 July 2009 16:01

smile
Participant actif
Date d'inscription: 2 Jul 2009
Messages: 110

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Bonjour,

J'ai enfin résolu le problème. Après plusieurs tentatives, j'ai tout réinstallé, je suis parti sur une base saine. J'ai recopié un modèle de mapfile et de layer.ini issus des démos de CW3 que j'ai adaptés à ma sauce à partir d'un fichier shape en local pour arriver au final à afficher les couches à partir des données de la BDD Oracle.

Tout est ok, maintenant je veux corser l'histoire en interrogeant une couche et récupérer des informations (id, libellé).

J'ai regardé les fichiers query.ini des démos où le bouton "query" fonctionne et je n'ai rien remarqué de particulier par rapport aux miens. J'ai juste chargé le module hilight au cas où mais cela ne marche pas non plus.

J'ai aussi modifié le mapfile comme il se doit:

Code:

        TEMPLATE "ttt"
        METADATA
            "id_attribute_string" "IDCOM|int"
            "query_returned_attributes" "IDCOM LIBCOM" 
        END

Mais j'ai une erreur PHP dûe à la ligne TEMPLATE "ttt" quand j'exécute la query:

Code:

Fatal error: [MapServer Error]: msOracleSpatialLayerGetShape(): Error parsing OracleSpatial DATA variable for query. To execute query functions you need to define one unique column [USING UNIQUE <#column>] in C:\ms4w\apps\cartoweb3\coreplugins\mapquery\server\ServerMapquery.php on line 142

La ligne 142 en question:

Code:

$shape = $msLayer->getShape($result->tileindex, $result->shapeindex);

Le problème est-il lié au fait que je n'ai pas de msLayer dans mon fichier layer.ini ?
Ou, cela est peut-être dû au fait que CW3 n'arrive pas à accéder aux données attributaires qui sont rattachées à un objet géographique (bâtiments, rues, ...)  car dans le mapfile la ligne DATA récupère seulement les données géométriques:


Code:

DATA "GEOMETRY FROM CADA.Bati"

Désolé de faire des posts lourds !

Merci d'avance !

Hors ligne

 

#5 Tue 07 July 2009 16:14

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

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Bonjour,

Comme le message d'erreur l'indique tu dois rajouter ceci dans ton paramètre DATA :

Code:

USING UNIQUE maColonneUnique

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

 

#6 Tue 07 July 2009 16:23

smile
Participant actif
Date d'inscription: 2 Jul 2009
Messages: 110

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Merci !!!

Heureusement que tu es là !!!

Désolé si les questions sont bêtes mais je découvre la géomatique alors bon...

Hors ligne

 

#7 Tue 07 July 2009 16:25

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

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

euuh non là c'est un problème de lecture wink

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

 

#8 Wed 08 July 2009 15:52

smile
Participant actif
Date d'inscription: 2 Jul 2009
Messages: 110

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Bonjour,

Le projet avance à petit pas.
La fonction Query marche tip top mis à part que je dois désactiver les requêtes persistentes pour éviter de faire planter l'application lorsque je fais deux query à la suite sans faire un query_clear.

J'ai rajouté le plugin "Auth" à l'application pour effectuer la gestion des droits. J'arrive à me connecter à ma base de données MySQL et à afficher les couches en fonction des utilisateurs.


Maintenant, j'aimerai pouvoir insérer un lien "Panneau d'administration" sur la page php du projet. Il suffit de faire <a href...></a> dans cartoclient.tpl mais je dois afficher le lien seulement si c'est un certain type d'utilisateur. Et de ce fait, je dois faire des tests/requêtes sur le status de l'utilisateur en cours. Insérer du code en php dans le fichier tpl ne fonctionne pas....


J'avais essayé de partir sur un script d'authentification hors-CW3 mais ca plantait à cause des
session_start() en php...

De même, sur la page qui va recevoir le panneau d'administation des utilisateurs, il faudra que je puisse tester sur la session afin de ne pas y avoir accès par l'url.

Pour être plus clair dans mes questions,

Comment peut-on intégrer/gérer des variables de sessions en php ?
Aussi, dans quel fichier dois-je intervenir car dans mon fichier de projet.php et celui de client, ca plantait les variables de sessions réalisées à la main.



PS: Est ce possible de renommer mon topic en Cartoweb3 à la place de OpenLayers SVP ? Et de mettre en titre " [MapServer/Cartoweb3 ] Problème Cartoweb/Session PHP Merci

Hors ligne

 

#9 Thu 09 July 2009 15:43

smile
Participant actif
Date d'inscription: 2 Jul 2009
Messages: 110

Re: [MapServer/CartoWeb3] Problème affichage via CartoWeb3

Bonjour,

Je vais peut-être reformuler mes questions.

J'aimerai pouvoir inclure du code PHP dans mon projet afin de pouvoir générer un mapfile dynamique en faisant des tests sur des variables de sessions afin d'aller pêcher des données sur les utilisateurs dans une BDD MySQL (tel mapfile selon l'utilisateur) etc...

Je souhaiterai savoir où inclure mes fichiers PHP de façon à ne pas faire planter CW3 et comment récupérer les variables de sessions ?

CW3 est une usine à gaz avec des intercroisements de plusieurs fichiers PHP !


Merci !!!

Hors ligne

 

Pied de page des forums

Powered by FluxBB