Dynamicky vložený iframe s mapou maps.google.com (PHP)

Pokud máte databázi adres, můžete následující kód využít pro automatické zobrazení adresy na mapě maps.google.com – tato mapa se vloží jako iframe do stránky.

poznámka: Pokud potřebujete na mapě zobrazit více adres najednou – více špendlíků – viz sérii článků Google maps API – zobrazení adres z databáze na mapě.

Malý dodatek k tomuto článku najdete v článku Jak odstranit bublinu z google maps ve vložené mapě na stránce?

Ještě na vysvětlenou: adresy mohou být uloženy například v databázi … z databáze se načtou do dvourozměrného pole … pole se prochází třeba cyklem foreach … a proměnné $ulice, $psc, $mesto nebo $gps jsou hodnoty brané z uvedeného pole … je to jenom o fantazii programátora 😀

(pozn. Pokud jsou zadány souřadnice GPS, mají přednost před adresou.)

< ?php
// $gps = "50.769769, 15.0579";
$ulice = "náměstí dr. E. Beneše 1";
$psc = "460 01";
$mesto = "Liberec";
if($gps != ""){
    $maps_dotaz = urlencode($gps);
    ?>
    <iframe width="500" height="500" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"
      src="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=cs&amp;geocode=&amp;q=<?php echo $maps_dotaz; ?>&amp;ll=< ?php echo $maps_dotaz; ?>&amp;sll=< ?php echo $maps_dotaz; ?>&amp;z=15&amp;output=embed"></iframe>
    <br />
    <a href="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=cs&amp;geocode=&amp;q=<?php echo $maps_dotaz; ?>&amp;ll=< ?php echo $maps_dotaz; ?>&amp;sll=< ?php echo $maps_dotaz; ?>" target="_blank">zvětšit mapu</a>
    < ?php
  }else{
    $maps_dotaz = urlencode($ulice . ", " . $psc . " " . $mesto);
    ?>
    <iframe width="500" height="500" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"
      src="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=cs&amp;geocode=&amp;q=<?php echo $maps_dotaz; ?>&amp;z=15&amp;output=embed"></iframe>
    <br />
    <a href="http://maps.google.com/maps?f=q&amp;source=embed&amp;hl=cs&amp;geocode=&amp;q=<?php echo $maps_dotaz; ?>" target="_blank">zvětšit mapu</a>
    < ?php
  }
?>

1 komentář

  1. Omlouvám se, že reaguji na již starší článek, ale jiný kontakt jsem nenašel.
    Prosím Vás už 2. den jsem zasekaný na jedné věci. Určitě zobrazování map na stránkách rozumíte více než já.
    Mám databázi cca 7000 záznamů včetně adres i GPS v dec. formátu. Chtěl bych, aby při zobrazení na mapě jednoho záznamu xy se okolo zobrazili jen ty nejbližší. V rádiusu xx km by to bylo asi zbytečně složité (něco jsem už o tom početl). Uvažoval jsem i o psč, ale co by mi úplně stačilo by bylo určit hranice mapy. Mapa se zoomem 14 by se zobrazovala v divu třeba čtverec 640 px x 640 px. Čtverec by byl vycentrovaný dle souřadnic záznamu xy. Ty záznamy, které by byly za hranicí čtverce by se nezobrazovaly ani nenačítaly a to ani při posunu mapy.
    Nepíši o řešení i když kdyby jste o nějakém odkazu věděl budu velice rád. Proč něco psát, když už někde třeba základ je.
    Budu vděčný i za odkaz někam do dokumentace API googlemaps kde se o podobném řešení zmiňují. Nevím v podstatě co hledat a java není má silná stránka.
    Děkuji za případnou reakci Milan

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

*