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 Mon 16 June 2008 10:44

toulousig
Participant actif
Lieu: Toulouse
Date d'inscription: 5 Sep 2005
Messages: 50

[Mapserver] Tester l'existence des layers des .map

Bonjour,

Je voudrais créer un script php qui teste si les layers des .map (les .map sont situés dans un répertoire défini) existent ou non, mais je ne sais pas trop quelles fonctions utiliser.
Mes couches géographiques sont au format MapInfo et elles sont dans plusieurs répertoires. Le but est donc de savoir si une couche n'a pas été supprimée ou déplacée.
Quelqu'un a-t-il fait ce genre de choses ou à défaut pourrait me donner une piste ?

Merci.

Cordialement,
toulousig

Hors ligne

 

#2 Mon 16 June 2008 11:00

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

Re: [Mapserver] Tester l'existence des layers des .map

Bonjour,

Même question, même réponse : http://www.forumsig.org/showthread.php?t=18708

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 16 June 2008 13:27

Guillaume Sueur
Participant assidu
Lieu: Toulouse
Date d'inscription: 23 Sep 2005
Messages: 331
Site web

Re: [Mapserver] Tester l'existence des layers des .map

hello,

j'ai relu les threads indiqués par Yves, et apparemment ton souci est
plutôt de vérifier que les fichiers sources existent pour chacun des
layers référencé dans le .map non ?

donc ce que tu peux faire c'est parcourir les couches (comme indiqué),
récupérer la string DATA, l'accoler au SHAPEPATH ($oMap->shapepath) et
vérifier via php que ce fichier existe réellement :
en gros, ça peut donner ça :

for ($i=0;$inumlayers;$i++)
{
    $oLayer = $oMap->getLayer($i);
    if (is_file($oMap->shapepath.$oLayer->data))
    {
        echo "ok pour la couche ".$oLayer->name;
    }
    else
    {
        echo "Erreur sur la couche ".$oLayer->name." : le fichier
".$oMap->shapepath.$oLayer->data." n'a pas été trouvé";
    }
}

Guillaume

Hors ligne

 

#4 Mon 16 June 2008 13:35

ranalisolofo.larrys
Participant occasionnel
Lieu: Ambolonkandrina
Date d'inscription: 19 Jul 2007
Messages: 40
Site web

Re: [Mapserver] Tester l'existence des layers des .map

Hi,
Il faut quand même tester que le layer n'est pas de type postgis et que le chemin de ton data n'est pas déjà un chemin absolue dans ce cas pas besoin de mettre le shapepath.

ralary

Hors ligne

 

Pied de page des forums

Powered by FluxBB