11540 sujets

JavaScript, DOM et API Web HTML5

Smiley decu onsoir,

Voila mon problème. Je souhaite afficher des cartes grace à google map.

Mon problème est simple. Mons script à l'air de fonctionner mais impossible d'afficher les cartes.

Plutôt qu'un long discours voici le code.

$resultats=$connexion->query("

select h_id, h_ev,h_lieu, h_lat,h_long from historique limit 0,2
						
"); // on va chercher tous les membres de la table qu'on trie par ordre croissant
$resultats->setFetchMode(PDO::FETCH_ASSOC); // on dit qu'on veut que le résultat soit récupérable sous forme d'objet


						
$javascript= '<script type="text/javascript">' .'function initialize() {';	
?>
 <div id="container">
<?php
while( $ligne = $resultats->fetch() ) // on récupère la liste des membres
{
$map = 'map'. $ligne['h_id'];		
// on boucle sur le javascript
$javascript .=
'var latlng'. $ligne['h_id'].  '= new google.maps.LatLng('.$ligne['h_lat'].','.$ligne['h_long'].'); 
					var options'.$ligne['h_id']. ' = {
					  zoom: 13,
					  center: latlng'. $ligne['h_id'].',
					  mapTypeId: google.maps.MapTypeId.ROADMAP
					};
					 
var '.'map'. $ligne['h_id'] .'= new google.maps.Map(document.getElementById("'. $map .'"), options'.$ligne['h_id']. ');' .
					
					'var marker = new google.maps.Marker({'.
		       'position: latlng'.$ligne['h_id'].','.
		       'map: map'.$ligne['h_id'].','.
		       'title: "événements"'.
		       '});';
// fin boucle javascript


?>

        <div id="map'.$ligne['h_id'].'">
            <p>Veuillez patienter pendant le chargement de la carte...</p>
        </div>

<?php
						
} // fin du while sur les événements id="map'.$ligne['h_id'].'"

$javascript .= '} </script>';

echo $javascript ;  // on affiche le javascript


$resultats->closeCursor(); // on ferme le curseur des résultats
?>
    </div>

</body>




Le résultat est une page blanche. Lorsque je regarde la source de la page les cartes sont bien présentes mais impossible de les afficher.

Si quelqu'un peut m'aider, MERCI

Astroma
Modifié par astroma (30 Aug 2012 - 23:48)
Salut;

apparemment c'est une erreur qui vient de là (appel à du php en dehors des balises php) :

[#red] <div id="map'.$ligne['h_id'].'">     //<-Cette ligne[/#]
            <p>Veuillez patienter pendant le chargement de la carte...</p>
</div>


A remplacer par

<div id="map<?php echo $ligne['h_id']; ?>">
Bonjour,

Merci d'avoir répondu. J'avais déjà testé cette solution mais hélas rien ne se passe.

Je viens de re-tester en me disant qu'hier je n'avais peut être plus les yeux en face des trous mais hélas je conforme ce n'est pas la solution

astroma
Modifié par astroma (31 Aug 2012 - 19:56)