2017-08-24 85 views
1

我的Leaflet地圖存在問題。我試圖向地圖顯示所有的標記,但它似乎不想在我的網站上工作,但在本地服務器(xampp)上它完美地工作。這是什麼問題?謝謝!未捕獲錯誤:LatLng對象無效:(未定義,未定義)

<script type="text/javascript">   
    function addScoala1() { 
    for(var i=0; i<scoala.length; i++) { 
    var greenIcon = new L.Icon({ 
    iconUrl: 'https://cdn.rawgit.com/pointhi/leaflet-color-markers/master/img/marker-icon-2x-green.png', 
    shadowUrl: 'https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.7/images/marker-shadow.png', 
    iconSize: [25, 41], 
    iconAnchor: [12, 41], 
    popupAnchor: [1, -34], 
    shadowSize: [41, 41] 
}); 
    var marker = L.marker([scoala[i]['latitudine'], scoala[i]['longitudine']], {icon: greenIcon}).addTo(map); 
    marker.bindPopup("<b>" + scoala[i]['scoala']+"</b><br>Detalii:" + scoala[i]['detalii'] + "<br />Telefon: " + scoala[i]['telefon']); 
    } 
    } 

function addMuzeu1() { 
    for(var i=0; i<muzeu.length; i++) { 
    var marker = L.marker([muzeu[i]['latitudine'], muzeu[i]['longitudine']]).addTo(map); 
    marker.bindPopup("<b>" + muzeu[i]['muzeu']+"</b><br>Detalii:" + muzeu[i]['detalii'] + "<br />Telefon: " + muzeu[i]['telefon']); 
    } 
    } 
$(document).ready(function() { 
    var map = L.map('map').setView([44.9323281,26.0306833], 12,25); 

    L.tileLayer('https://api.mapbox.com/styles/v1/mapbox/streets-v10/tiles/{z}/{x}/{y}?access_token=pk.eyJ1IjoibWVnYTYzODIiLCJhIjoiY2ozbXpsZHgxMDAzNjJxbndweDQ4am5mZyJ9.uHEjtQhnIuva7f6pAfrdTw', { 
    maxZoom: 18, 
    attribution: 'Map data &copy; <a href="http://openstreetmap.org/"> OpenStreetMap </a> contributors, ' + 
    '<a href="http://creativecommons.org/"> CC-BY-SA </a>, ' + 
    'Imagery © <a href="http://mapbox.com">Mapbox</a>', 
    id: 'examples.map-i875mjb7' 
    }).addTo(map); 
    var scoala = JSON.parse('<?php echo json_encode($scoala) ?>'); 
    var muzeu = JSON.parse('<?php echo json_encode($muzeu) ?>'); 
    console.log(scoala); 
addScoala1(); 
addMuzeu1(); 
}); 
</script> 

的變量是:

$scoala = $conn->getScoalaList(); 
$muzeu = $conn->getMuzeuList(); 
$zona = $conn->getZonaList(); 

而且getScoalaList()等函數是:

public function getScoalaList() 
    { 
      $arr = array(); 
      $statement = $this->aDBConn->prepare("SELECT id, nume, detalii, latitudine, longitudine, telefon, cuv_cheie from scoala order by nume ASC"); 
      $statement->bind_result($id, $scoala1, $detalii1, $latitudine1, $longitudine1, $telefon1, $cuv_cheie1); 
      $statement->execute(); 
      while ($statement->fetch()) { 
      $arr = array('id' => $id, 'scoala' => $scoala1, 'detalii' => $detalii1, 'latitudine' => $latitudine1, 'longitudine' => $longitudine1, 'telefon' => $telefon1, 'cuv_cheie' => $cuv_cheie1); 
      } 
      $statement->close(); 

      return $arr; 
    } 
     public function getMuzeuList() 
    { 
      $arr = array(); 
      $statement = $this->aDBConn->prepare("SELECT id, nume, detalii, latitudine, longitudine, telefon, cuv_cheie from muzeu order by nume ASC"); 
      $statement->bind_result($id, $muzeu, $detalii, $latitudine1, $longitudine1, $telefon, $cuv_cheie); 
      $statement->execute(); 
      while ($statement->fetch()) { 
      $arr =array('id' => $id, 'muzeu' => $muzeu, 'detalii' => $detalii, 'latitudine' => $latitudine1, 'longitudine' => $longitudine1, 'telefon' => $telefon, 'cuv_cheie' => $cuv_cheie); 
      } 
      $statement->close(); 

      return $arr; 
    } 

我不知道有什麼可以是問題...任何想法?它可以幫助我很多..我是一個菜鳥

回答

0

解決了這個問題,我應該添加addScoala1()和其他函數document.ready()函數..

相關問題