Mettre $_COOKIE['Longitude']dans une fct javascript

Résolu
linda - Modifié par jordane45 le 23/03/2016 à 01:01
 linda - 23 mars 2016 à 03:15
Bonjour,
j'ai cette fonction et il faut que a la place de ces valeurs(43.525,1.826944); je mets
$_COOKIE['Longitude']et $_COOKIE['Latitude'] qui j'ai récupéré depuis ma base de donnée mais j'ai pas pu le faire svp aidez moi!
function initialize(){ 


var mapOptions={ 
zoom: 6, // 0 à 21 
center: new google.maps.LatLng(47,2), // centre de la carte 
mapTypeId: google.maps.MapTypeId.ROADMAP, // ROADMAP, SATELLITE, HYBRID, TERRAIN 
} 
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); 

var myLatLng= new google.maps.LatLng(43.525,1.826944); 
var marker = new google.maps.Marker ({ 
position: myLatLng, 
map: map, 
titre: "Auriac-sur-vendinelle" 
}); 

var myLatLng2 = new google.maps.LatLng(43.6,2.25); 
var marker2 = new google.maps.Marker ({ 
position: myLatLng2, 
map: map, 
titre: "Castres" 
}); 

//trajet 1 
var directionsService = new google.maps.DirectionsService(); 
var directionsDisplay = new google.maps.DirectionsRenderer({ 
'map': map 
}); 

var request = { 
origin: myLatLng, 
destination: myLatLng2, 
travelMode: google.maps.DirectionsTravelMode.DRIVING, 
unitSystem: google.maps.DirectionsUnitSystem.METRIC 
}; 

directionsService.route(request, function(response, status){ 
if(status == google.maps.DirectionsStatus.OK){ 
directionsDisplay.setDirections(response); 
directionsDisplay.suppressMarkers = false; 
directionsDisplay.setOptions({ 
polylineOptions: {strokeColor: '#008000'}, 
preserveViewport: false 
}); 
} 
}); 


}


EDIT : Ajout des balises de code.

1 réponse

jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
23 mars 2016 à 01:01
Bonjour,

Tu peux récupérer le contenu des cookies en javascript en utilisant, par exemple, la fonction suivante :
function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

http://ppk.developpez.com/tutoriels/javascript/gestion-cookies-javascript/

Tu peux aussi utiliser la syntaxe suivante :
var lgt = <?php echo $_COOKIE['toncookie'];?>;


Mais le plus propre serait, au lieu d'utiliser les cookies... de passer par de l'ajax.... (les données provenant très certainement d'une base de données non ????);
Voici un exemple : http://forum.phpfrance.com/faq-tutoriels/geolocalisation-google-maps-avec-php-ajax-t265434.html


PS: A l'avenir, merci d'utiliser les balises de code lorsque tu postes du code sur le forum.
Je les ajoute dans ton message initiale... merci d'y penser à l'avenir.



0
Merci Monsieur jordane 45 mais erreur; voila j'ai ajouté cette var :

function initialize() {


var mapOptions={
zoom: 6, // 0 à 21
center: new google.maps.LatLng(47,2), // centre de la carte
mapTypeId: google.maps.MapTypeId.ROADMAP, // ROADMAP, SATELLITE, HYBRID, TERRAIN
}
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
var lgt = <?php echo $_COOKIE['toncookie'];?>;
var myLatLng= new google.maps.LatLng( lgt ,1.826944);
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344 > linda
23 mars 2016 à 01:41
1 - Où sont les BALISES DE CODE ?
Merci de lire ceci : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

2 - Il ne suffit pas de copier/colle bêtement .... as tu pensé à renommer le cookie ?? Je ne pense pas qu'il se nomme 'toncookie' ....... ??!
0
Si monsieur j'ai changé cookie wlh mais j'ai copié la partie fausse,dsl

function initialize() { 


var mapOptions={ 
zoom: 6, // 0 à 21 
center: new google.maps.LatLng(47,2), // centre de la carte 
mapTypeId: google.maps.MapTypeId.ROADMAP, // ROADMAP, SATELLITE, HYBRID, TERRAIN 
} 
var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); 
 var lgt = <?php echo $_COOKIE['Latitude'];?>;
var myLatLng= new google.maps.LatLng( lgt ,1.826944);
0
jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344 > linda
23 mars 2016 à 02:04
Et ça ne fonctionne pas ?
Que dis la CONSOLE de ton navigateur ? pas de message d'erreur ? (une capturé écran serait la bienvenue que je puisse voir ce que contient la console.... )

Au cas où, tu peux essayer en mettant des quotes autour :
 var lgt = '<?php echo $_COOKIE['Latitude'];?>';


et mets également le ligne suivante juste en dessous :
 console.log("lgt => " + lgt );

=> ça va apparaitre dans la console et on pourra ainsi voir si la variable est correctement remplie....

Après.. comme indiqué dans mon précédent message ... l'utilisation de l'AJAX serait tout de même mieux.....
0
avant il affiche api google map mais maintenant page vide et pour l'utilisation de l'AJAX je savais pas , cette méthode récupere les coordonnes Latitude et longitude?
0
Rejoignez-nous