Annonce
Suite à un problème technique intervenu entre le 22 et le 23 mars, nous avons du procéder dans la soirée du 25 mars, à la restauration de la base de données du 24 mars (matinée).
En clair, nous avons perdu vos contributions et inscriptions du dimanche 24 et du lundi 25 mars.
Nous vous prions de nous excuser.
#1 Tue 17 January 2017 14:57
- alexyvdv
- Participant occasionnel
- Date d'inscription: 14 Sep 2016
- Messages: 18
Mapserver point mysql symbologie
Bonjour à tous,
Je tente actuellement de générer des map sur lesquelles je positionne des pictogrammes définies par une lat/lon.
Je vais chercher les informations concernant toutes mes villes dans Mysql.
Code:
$requete= "***" $idconnection=@mysql_connect("***","***","***"); $etat = mysql_query($requete,$idconnection); $i=0; while ($row=mysql_fetch_array($etat,MYSQL_NUM)){ $qresult[$i] = $row; echo $qresult[$i]; $i++; }
L'echo me donne :
array(9) {
[0] => string(4) "3544"
[1] => string(11) "Montpellier"
[2] => string(19) "2017-01-19 00:00:00"
[3] => string(7) "5375970" (latitude en mètre)
[4] => string(6) "431549" (longitude en mètre)
[5] => string(5) "c0000" (expression associée à un logo dans le map)
}
array(9) {
[0] => string(4) "3341"
[1] => string(4) "Metz"
[2] => string(19) "2017-01-19 00:00:00"
[3] => string(7) "6262870"
[4] => string(6) "687614"
[5] => string(5) "c0023"
...
...
...
"
J'ajoute ensuite chacune de mes villes requêtée au sein de mon layer selon le code :
Code:
$layer=$this->map->getLayerByName("carte"); $i=0; foreach($qresult as $row) { $point[$i] = ms_newPointObj(); $line[$i] = ms_newLineObj(); $shape[$i] = ms_newShapeObj(MS_SHAPE_POINT); $point[$i]->setXY($row[4],$row[3]); $line[$i]->add($point[$i]); $shape[$i]->add($line[$i]); $shape[$i]->set(index,$row[5]); // Add feature to the layer $layer->addFeature($shape[$i]); $i++; }
Mon mapfile ressemble à cela :
Code:
LAYER NAME "carte" STATUS On TYPE POINT PROJECTION "proj=merc" END TRANSPARENCY 90 CLASS EXPRESSION "n0000" STYLE SYMBOL ../logo/jour/grand/n0000.png END END CLASS EXPRESSION "c0000" STYLE SYMBOL ../logo/jour/grand/c0000.png END END CLASS EXPRESSION "c0010" STYLE SYMBOL ../logo/jour/grand/c0010.png .... ... ....
Toutefois, impossible de tracer quoique ce soit. Une erreur m'est notifiée à l'execution du php :
"Notice: Use of undefined constant index - assumed 'index' " indiqué à la ligne $shape[$i]->set(index,$row[5]);
Difficile de savoir pourquoi cela ne fonctionne pas ?
Je ne vois pas ce qui diffère de la méthode exposée dans ce livre à la page 256 :
https://issuu.com/mani2604/docs/beginni … evelopment
Je vous remercie d'avance,
N'hésitez pas à me demander plus d'informations si j'omets certaines choses.
Bon après-midi !
Hors ligne
#2 Wed 18 January 2017 12:41
- alexyvdv
- Participant occasionnel
- Date d'inscription: 14 Sep 2016
- Messages: 18
Re: Mapserver point mysql symbologie
Bonjour,
Je vois que mon explication déchaîne les foules
Personne n'a d'idée face à ce problème ?
Je vous remercie.
Hors ligne