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 Fri 21 January 2011 16:53

Rem_FR
Juste Inscrit !
Date d'inscription: 20 Jan 2011
Messages: 6

V2 vs V3 : position des marqueurs non à l'identique

Bonjour,

J'ai réalisé la migration de ma carte de la V2 à la V3. Je rencontre un petit pb. Les marqueurs sur ma carte V3 ne sont pas positionnés exactement au même endroit par rapport à la V2. Pourtant les coordonnées lat lng sont bien les mêmes.

http://chti.sportif.free.fr/calendrier_sports.php

Avez-vous une explication ?

Par ailleurs dans mon fichier .CSV je suis obligé de transformer les caractères accentués par leur code html (ex : O² Régionale) pour avoir un visuel correct sur ma carte alors que j'ai indiqué dans mon fichier .php
$xmlStr=str_replace('<','&lt;',$htmlStr);
$xmlStr=str_replace('>','&gt;',$xmlStr);
$xmlStr=str_replace('"','&quot;',$xmlStr);
$xmlStr=str_replace("'",'&apos;',$xmlStr);
$xmlStr=str_replace("&",'&amp;',$xmlStr);  ...

Comment régler ce pb ?

D'avance merci.

Dernière modification par Rem_FR (Sat 22 January 2011 16:07)

Hors ligne

 

#2 Fri 21 January 2011 17:22

Delu
Participant actif
Lieu: Briançon
Date d'inscription: 29 Apr 2008
Messages: 76

Re: V2 vs V3 : position des marqueurs non à l'identique

bonjour,

Pour le premier point, je ne sais pas, je n'utilise pas cette API. Mais ça ressemble à un pb de projection, ou peut-être de précision des coordonnées (arrondi).
Pour le point concernant l'encoding des caractères : 2 pistes.
La plupart du temps, il suffit que le fichier (php ou js) soit encodé en utf8. Pour cela, ouvrir le fichier dans le notepad++ puis menu encodage -> convertir en UTF8.
sinon dans le php parfois j'utilise ceci : utf8_decode($ma_variable_string);
En espérant qu'une des deux pistes fonctionne.

Hors ligne

 

#3 Fri 21 January 2011 18:10

gobbaf
Participant occasionnel
Date d'inscription: 29 Apr 2006
Messages: 16
Site web

Re: V2 vs V3 : position des marqueurs non à l'identique

Bonjour,
les tailles d'icônes et les anchor sont différents sur les deux versions. Du coup ça risque de poser problème.

Fabien

Hors ligne

 

#4 Fri 21 January 2011 18:39

Rem_FR
Juste Inscrit !
Date d'inscription: 20 Jan 2011
Messages: 6

Re: V2 vs V3 : position des marqueurs non à l'identique

Pour le 1) c'est réglé merci.

Pour le 2) j'ai fait un test sur les "é" en encodant en UTF8 ces 3 fichiers :
phpsqlajax_genxml_test.php
phpsqlajax_data_cartecalendar - copie.csv

je n'ai pas vu de changement

sinon dans le php parfois j'utilise ceci : utf8_decode($ma_variable_string);


comment définir cette fonction svp ?

Code:

<?php
require("./phpsqlajax_dbinfo.php");

function parseToXML($htmlStr) 
{ 
$xmlStr=str_replace('<','&lt;',$htmlStr); 
$xmlStr=str_replace('>','&gt;',$xmlStr); 
$xmlStr=str_replace('"','&quot;',$xmlStr); 
$xmlStr=str_replace("'",'&apos;',$xmlStr); 
$xmlStr=str_replace("&",'&amp;',$xmlStr);  
return $xmlStr; 
} 

// Opens a connection to a mySQL server
$connection=mysql_connect (localhost, $username, $password);
if (!$connection) {
  die('Not connected : ' . mysql_error());
}

// Set the active mySQL database
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
  die ('Can\'t use db : ' . mysql_error());
}

// Select all the rows in the markers table
$query = "SELECT * FROM markers_calendrier WHERE 1";
$result = mysql_query($query);
if (!$result) {
  die('Invalid query: ' . mysql_error());
}

header("Content-type: text/xml");

// Start XML file, echo parent node
echo '<markers>';

// Iterate through the rows, printing XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
  // ADD TO XML DOCUMENT NODE
  echo '<marker ';
  echo 'date="' . parseToXML($row['date']) . '" ';
  echo 'puce="' . parseToXML($row['puce']) . '" ';
  echo 'category="' . parseToXML($row['category']) . '" ';
  echo 'lat="' . $row['lat'] . '" ';
  echo 'lng="' . $row['lng'] . '" ';
  echo 'ville="' . parseToXML($row['ville']) . '" ';
  echo 'name="' . parseToXML($row['name']) . '" ';
  echo 'info="' . parseToXML($row['info']) . '" ';
  echo 'link="' . parseToXML($row['link']) . '" ';
  echo 'fiche="' . parseToXML($row['fiche']) . '" ';
  echo 'infoUrl="' . parseToXML($row['infoUrl']) . '" ';
  echo 'photo="' . parseToXML($row['photo']) . '" ';
  echo '/>';
}

// End XML file
echo '</markers>';

?>

et ma page principale quel dois être l'encodage ? le charset ?

Dernière modification par Rem_FR (Sat 22 January 2011 11:11)

Hors ligne

 

#5 Fri 21 January 2011 21:28

Rem_FR
Juste Inscrit !
Date d'inscription: 20 Jan 2011
Messages: 6

Re: V2 vs V3 : position des marqueurs non à l'identique

J'ai essayé avec :

Code:

$encoded=$row['name'];
$encoded=htmlspecialchars($encoded);
$encoded=utf8_encode($encoded);
echo 'name="' .$encoded. '" ';

avec succès wink

Dernière modification par Rem_FR (Fri 21 January 2011 21:28)

Hors ligne

 

#6 Fri 21 January 2011 22:34

Delu
Participant actif
Lieu: Briançon
Date d'inscription: 29 Apr 2008
Messages: 76

Re: V2 vs V3 : position des marqueurs non à l'identique

oui c'est un qq chose dans ce gout là :
ou tout simplement au lieu de
echo 'ville="' . parseToXML($row['ville']) . '" ';
ceci
echo 'ville="' . parseToXML(utf8_encode($row['ville'])) . '" ';

Hors ligne

 

#7 Sat 22 January 2011 09:49

Rem_FR
Juste Inscrit !
Date d'inscription: 20 Jan 2011
Messages: 6

Re: V2 vs V3 : position des marqueurs non à l'identique

oui ça marche aussi
Sujet résolu.

Hors ligne

 

Pied de page des forums

Powered by FluxBB