Google map, image dans infobulle

dante20007 Messages postés 61 Date d'inscription mercredi 25 avril 2007 Statut Membre Dernière intervention 27 avril 2009 - 22 mars 2008 à 18:34
cs_math11 Messages postés 47 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 31 mai 2012 - 3 mai 2010 à 10:41
bonjour , je veux mettre une image dans chaque info bulle sous google map.
le nom de mon image est dans un champ de ma base de donnée,et je le recupere pour google map par un fichier xml, mais je n'arrive pas à l'afficher,en fait ca affiche son nom:
EX:
    GDownloadUrl("phpsqlajax_genxml.php", function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("marker");
          for (var i = 0; i < markers.length; i++) {
            var name = markers[i].getAttribute("name");
            var address = markers[i].getAttribute("address");
            var type = markers[i].getAttribute("type");
            var image = markers[i].getAttribute("image");
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("lng")));
            var marker = createMarker(point, name, address, type, image);
            map.addOverlay(marker);
          }
        });
      }
    }

    function createMarker(point, name, address, type, image) {
      var marker = new GMarker(point, customIcons[type]);
      var html = " " + name + "
" + address + "
" + type + "
" +image;
      GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;

Ma variable "image" contient le nom de mon image

Voici mon xml:

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

// Start XML file, create parent node
$doc = domxml_new_doc("1.0");
$node = $doc->create_element("markers");
$parnode = $doc->append_child($node);

// 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 WHERE 1";
$result = mysql_query($query);
if (!$result) {
  die('Invalid query: ' . mysql_error());
}

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

// Iterate through the rows, adding XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
  // ADD TO XML DOCUMENT NODE
  $node = $doc->create_element("marker");
  $newnode = $parnode->append_child($node);

  $newnode->set_attribute("name", $row['name']);
  $newnode->set_attribute("address", $row['address']);
  $newnode->set_attribute("lat", $row['lat']);
  $newnode->set_attribute("lng", $row['lng']);
  $newnode->set_attribute("type", $row['type']);
  $newnode->set_attribute("image", $row['image']);
}

$xmlfile = $doc->dump_mem();
echo $xmlfile;

?>

3 réponses

cs_math11 Messages postés 47 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 31 mai 2012
2 mai 2010 à 19:24
Bonjour,

En fait, j'ai le même problème et j'aurais voulu savoir si tu avais trouvé une solution.

Merci d'avence

math11
0
Vamosplaya Messages postés 127 Date d'inscription vendredi 16 octobre 2009 Statut Membre Dernière intervention 10 décembre 2012
3 mai 2010 à 09:48
Bonjour,

Il faut je pense utiliser une syntaxe du style :

var html = "" + name + "
" + address + "
" + type + "
;


openInfoWindowHtml Ouvre une fenêtre d'info avec HTML, il lui faut donc
une balise img pour comprendre qu'il s'agit d'une image.



Vamos
0
cs_math11 Messages postés 47 Date d'inscription mardi 9 août 2005 Statut Membre Dernière intervention 31 mai 2012
3 mai 2010 à 10:41
Bonjour,

Merci Vamos pour ta réponse, c'était pas tout à fait cela, mais cela m'a permi de trouver la bonne façon de faire, a savoir:

''


math11
0
Rejoignez-nous