v2.5.2
Giriş yap

javascript içinde php foreach kullanmak.

pcmemo
601 defa görüntülendi

Google map'in bir çok lokasyonu aynı harita karesi içinde gösteren javascriptine bu bir çok konumu php ile sql'den çağırıp öyle göstermek istiyorum.
Deneme yanılma metodlarım tıkandı. Son olarak takıldığım yer

javascriptin içinde değişkenin tanımlandığı alan içinde, yani;

    var locations = [

    ['Açıklayhıcı başlık', 55.7279418, 37.4741555],
    ['Açıklayhıcı başlık', 55.7279418, 37.4741555],
    ['Açıklayhıcı başlık', 55.7279418, 37.4741555],
    
    ];

yukarıda gördüğünüz çoklu satırı foreach ile sqlden almak istiyorum, ve;

    var locations = [

<?php 
$lokasyon=$db->query("SELECT * from tbl_haritalar_lokasyon WHERE Durum = 1 and MapID = ".$HaritaID);
$lokasyon->execute();
foreach ($lokasyon as $loc) { ?>
    ['<?php $loc['aciklayici_baslik']?>', <?php $loc['Latitude']?>, <?php $loc['Longitude']?>],
<?php } ?>    
    ];

gibi yapmaya çalışıyorum. Ama bu birleştirmede bişeyler hatalı. Arka harita geliyor ama üstteki örnekte gelen kırmızı konum noktaları altaki php foreach örneği kodumda gelmiyor.

Saygılar.

Cevap yaz
Cevaplar (2)
pcmemo
1484 gün önce

Allah ilmini artırsın kardeşim. Yine yetiştin. Teşekkür ederim.

tayfunerbilen
1484 gün önce

şöyle dener misin;

<?php 
$lokasyon=$db->query("SELECT * from tbl_haritalar_lokasyon WHERE Durum = 1 and MapID = ".$HaritaID)->fetchAll(PDO::FETCH_ASSOC);
$lokasyonlar = [];
foreach ($lokasyon as $loc) { 
    $lokasyonlar[] = "['{$loc['aciklayic_baslik']}', '{$loc['Latitude']}', '{$loc['Longitude']}']";
}
?>
<script>
    var locations = [
        <?=implode(',', $lokasyonlar)?>
    ];
</script>