2016-04-14 45 views
1

Web sitemde enlem ve boylam değerinin latitude ve longitude sütunlarından geldiği google harita işaretleyicisini göstermem gerekiyor.Veritabanından JavaScript'e php değerini ayarlayın

lat: <?php echo $latitude; ?> 
lng: <?php echo $latitude; ?> 

Ama çalışmıyor:

Başlangıçta JavaScript kodu ben php kodu yerleştirmeye ile çalıştı

var map; 
function initialize() { 
    map = new GMaps({ 
     div: '#map', 
     lat: -37.817917, 
     lng: 144.965065, 
     zoom: 16 

    }); 
    map.addMarker({ 
     lat: -37.81792, 
     lng: 144.96506, 
     title: 'Marker with InfoWindow', 
     icon: 'images/map-marker.png', 
     infoWindow: { 
      content: '<p>Melbourne Victoria, 300, Australia</p>' 
     } 
    }); 
} 

olduğunu.

Ben getElementById

<input id="map_latitude" value="<?= $latitude ?>" hidden> 
<input id="map_longitude" value="<?= $longitude ?>" hidden> 

ve JavaScript kullanarak koordinatlara giriş alanı değerini ayarlayın ve sonra JavaScript diyoruz edilir, bunu yapmanın bir daha yolunu: Bu Tecrübeyle sabit bir (, yapma

lat: getElementById('#map_latitude'), 
lng: getElementById('#map_longitude') 
+0

altında çalışmalarını gerektiğini deneyin. 'Lat: $ ('# map_latitude') 'ı yapmaya çalışın val(), lng:. $ (# Map_longitude'). Val()'. JQuery'yi ayarlarsanız. Not: boş değerler alamadığınızdan emin olun. – KubiRoazhon

+0

Olası çoğaltılabilir [Değişkenleri ve verileri PHP'den JavaScript'e nasıl geçirebilirim?] (Http://stackoverflow.com/questions/23740548/how-to-pass-variables-and-data-from-php-to-javascript) – Hypaethral

cevap

1

Bu tamamen çalışmalıdır) doğru olup olmadığını bilmek:

div: '#map', 
lat: <?php echo $latitude; ?>, 
lng: <?php echo $longitude; ?>, 

İkinci seçenek de çalışmalı, ancak küçük bir değişiklik yapmalısınız.

var map; 
var lati = getElementById('map_latitude').value; //Need to select the value 
var longi = getElementById('map_longitude').value; //and remove the hashtag (#) 
function initialize() { 
    map = new GMaps({ 
     div: '#map', 
     lat: lati, 
     lng: longi, 
     zoom: 16 

Konsolu her zaman hatalardan denetleyin.

2

ikinci seçeneği için ikinci bölümü

lat: document.getElementById('map_latitude').value, 
lng: document.getElementById('map_longitude').value