• 23-07-2018, 11:56:07
    #1
    Merhaba arkadaşlar,

    Site üzerinde üyelerin listelemesini yapıyorum,

    Bu üyelerin adresleri de toplanıyor,

    Listeleme sayfasında sol tarafta üyeler sağ tarafta ise üyelerin konumlarının bulunduğu harita yer alıyor,

    Ben bu haritada girilen adrese göre marker yerleştirmesi nasıl yaparım?

    Tek harita üzerinde birden çok marker yer alacak,

    Birde seçmiş olduğu ile göre gösterim yapacak

    Yardımlarınızı bekliyorum
  • 23-07-2018, 12:00:24
    #2
    Google maps api kullanabilirsiniz hocam. google my maps üzerinden yapabilirsiniz. Ama adresler her zaman tutmaya bilir. Enlem ve boylam bilgileri daha net sonuçlar verir.
  • 23-07-2018, 12:02:56
    #3
    truvacreative adlı üyeden alıntı: mesajı görüntüle
    Google maps api kullanabilirsiniz hocam. google my maps üzerinden yapabilirsiniz. Ama adresler her zaman tutmaya bilir. Enlem ve boylam bilgileri daha net sonuçlar verir.
    Cevap için teşekkürler hocam. Enlem boylamı üye nasıl girecek öyle bir sıkıntı var veya o enlem boylamı adrese göre çekme kafamı karıştırıyor
  • 23-07-2018, 12:04:10
    #4
    https://developers.google.com/maps/d.../mysql-to-maps
    Burdaki doküman yeterli olmasi gerekiyor...



    ErGk adlı üyeden alıntı: mesajı görüntüle
    Cevap için teşekkürler hocam. Enlem boylamı üye nasıl girecek öyle bir sıkıntı var veya o enlem boylamı adrese göre çekme kafamı karıştırıyor
    Google Geocode Reverse. Asagdaki link sinirlama nedeniyle olmayabilir. Ama Google'den bir API KEY alarak kullanabilirsiniz. JSON veya XML olarak adresin gps koordinatlarini geri veriyor...
    https://maps.google.com/maps/api/geo...RAYAADRESSEKLE
  • 23-07-2018, 12:18:51
    #5
    inanbayram adlı üyeden alıntı: mesajı görüntüle
    https://developers.google.com/maps/d.../mysql-to-maps
    Burdaki doküman yeterli olmasi gerekiyor...





    Google Geocode Reverse. Asagdaki link sinirlama nedeniyle olmayabilir. Ama Google'den bir API KEY alarak kullanabilirsiniz. JSON veya XML olarak adresin gps koordinatlarini geri veriyor...
    https://maps.google.com/maps/api/geo...RAYAADRESSEKLE
    bi inceleyeyim hocam



    Arkadaşlar bu şekilde ayarladım ama örn. 400 kayıt listeliyor buda aşırı kasıyor
    <?php 
    				$istanbul=mysqli_query($mysqlicon, "SELECT * FROM firmalar WHERE bloke LIKE '0' AND il LIKE '%$local%' AND (tanitim_yazisi LIKE '%$aranan%' OR firma_adi LIKE '%$aranan%' OR hizmet LIKE '%$arama_id%' ) ORDER BY puan DESC");
    					while($row_ist= mysqli_fetch_array($istanbul)){ 
    						$address = $row_ist["adres"];
    						$url = 'http://maps.google.com/maps/api/geocode/json?address=' . urlencode(htmlentities($address)) . '&sensor=false';
    						$data = json_decode(file_get_contents($url));
    
    						$enlem = $data->results[0]->geometry->location->lat;
    						$boylam = $data->results[0]->geometry->location->lng; 
    						if(!empty($enlem) AND !empty($boylam)){
    				?>
                    addMarker({
    					coords:{lat:<?php echo $enlem ?>, lng:<?php echo $boylam ?>},
    					content:'<div class="mapsmark"><h3 class="adrisbaslik"><?php echo $row_ist["firma_adi"] ?></h3><p class="adris"><?php echo $row_ist["adres"] ?></p> <br/><?php echo $row_ist["il"] ?> / <?php echo $row_ist["ilce"] ?></div>'
    				});
    				<?php } }?>
  • 24-07-2018, 20:01:10
    #6
    ErGk adlı üyeden alıntı: mesajı görüntüle
    bi inceleyeyim hocam



    Arkadaşlar bu şekilde ayarladım ama örn. 400 kayıt listeliyor buda aşırı kasıyor
    <?php
                    $istanbul=mysqli_query($mysqlicon, "SELECT * FROM firmalar WHERE bloke LIKE '0' AND il LIKE '%$local%' AND (tanitim_yazisi LIKE '%$aranan%' OR firma_adi LIKE '%$aranan%' OR hizmet LIKE '%$arama_id%' ) ORDER BY puan DESC");
                        while($row_ist= mysqli_fetch_array($istanbul)){
                            $address = $row_ist["adres"];
                            $url = 'http://maps.google.com/maps/api/geocode/json?address=' . urlencode(htmlentities($address)) . '&sensor=false';
                            $data = json_decode(file_get_contents($url));
    
                            $enlem = $data->results[0]->geometry->location->lat;
                            $boylam = $data->results[0]->geometry->location->lng;
                            if(!empty($enlem) AND !empty($boylam)){
                    ?>
                    addMarker({
                        coords:{lat:<?php echo $enlem ?>, lng:<?php echo $boylam ?>},
                        content:'<div class="mapsmark"><h3 class="adrisbaslik"><?php echo $row_ist["firma_adi"] ?></h3><p class="adris"><?php echo $row_ist["adres"] ?></p> <br/><?php echo $row_ist["il"] ?> / <?php echo $row_ist["ilce"] ?></div>'
                    });
                    <?php } }?>
    Veritabanina bir firma ekleyince GPS koordinatlarini'da ekle. Yani eklerken $enlem ve $boylam bilgilerini'de kayitla. Sonradan haritayi olusturmak istediginde koordinatlari db'den cek ve direk addMarker(...) islemini yap...