2010-11-19 10 views
1

내가 좋아하는, 내 자신의 PHP 스크립트를했습니다 : 당신이 그것을 볼 수 있듯이Google지도 URL을 얻으시겠습니까? :)

<?php 

    <iframe width="425" height="350" frameborder="0" scrolling="no" src="' .$url .'"></iframe> 

?> 

, 다음 오른쪽의 "링크"를 클릭하여 기본 구글 맵은 iframe (아무 것도 입력, maps.google.com로 이동입니다 맨 위와 코드 udner "HTML을 붙여 넣어 웹 사이트에 삽입"을 확인하십시오.

요점은 $ url 변수에 대한 사용자 친숙한 입력을 만들고 싶습니다.

현재 사용자는 Google 웹 사이트로 이동하여 "링크"에서 두 번째 URL을 복사 한 다음 다른 모든 것을 삭제하고 src = url 만 입력해야합니다.

사이트에서 내 입력을 검색 후 위치 데이터로 업데이트하는 Google지도 검색을 만드는 방법이 있습니까?

그것은 그렇게 보일 것입니다 :

http://jsfiddle.net/rMLKJ/

답변

0

당신은 구글 지오 웹 서비스를 사용할 수 있습니다.

http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=false 

당신이 그것을 서버 측을 수행 할 경우

http://code.google.com/intl/en/apis/maps/documentation/geocoding/index.html

그것은에 HTTP 요청입니다. PHP 코드에서 요청을하면 좌표가 생기고 프론트 엔드로 전달할 수 있습니다.

클라이언트 측 접근 방식을 원한다면 자바 스크립트에서 아약스를 통해 요청을 한 다음 다른 아약스 호출을 사용하여 서버에 좌표를 보낼 수 있습니다.

1

나는 간단한 PHP 스크립트는 구글 지오 코딩 API를 내가 Ajax 요청을 여기에 jQuery를 사용한

<?php 

$address = $_GET['address']; 
$address=str_replace(" ","+",$address); 
if ($address) { 
    $json = file_get_contents('http://maps.googleapis.com/maps/api/geocode/json?address='.$address. 
    '&sensor=true'); 
    echo $json; 
} 

?> 

를 사용하여 좌표를 가져옵니다 당신 here

에 대한 데모를 설정했습니다. 위도와 경도는 PHP 스크립트에 의해 반환 된 JSON 형태로 구문 분석되고지도상의 위치를 ​​표시하는 마커가 만들어집니다.

function getMarker() { 
    var address=$('#address').val(); 
    address=address.replace(/ /g,"+"); 

    $.getJSON("getjson.php?address="+address, 
     function(data){ 
      lat=data.results[0].geometry.location.lat; 
      lng=data.results[0].geometry.location.lng; 
      point= new google.maps.LatLng(lat,lng); 
      map.setCenter(point); 
      zoom = 14; 
      marker = createMarker(point,"<h3>Marker"+(markersArray.length+1)+"</h3>",zoom); 

      var newLi=document.createElement("li"); 
      var newA=document.createElement("a"); 
      var newText = document.createTextNode("Marker "+(markersArray.length+1)); 
      newA.appendChild(newText); 
      newLi.appendChild(newA); 
      newA.setAttribute('onclick','displayMarker(this.innerHTML);'); 
      document.getElementById('marker_tabs').appendChild(newLi); 
      markersArray.push(marker); 
     } 
    ); 

} 

사용자가 입력 한 검색어를 기반으로 Google은 두 개 이상의 결과를 반환 할 수 있습니다. 이것은 단지 예일 뿐이므로 나는 처음 결과를 얻었습니다.

0

그것의 매우 간단합니다 :

<?php $url = str_replace('&', '&amp;', $url).'&amp;output=embed'; ?> 

<iframe width="425" height="350" frameborder="0" scrolling="no" src="<?php echo $url ?>"></iframe> 
-1

체크 아웃은 이제지도 API 제공의 일부 Google Maps URLs 를 사용하여 같은 URL을 구축 할 수있는 새로운 방법.

+0

이 링크는 질문에 대답 할 수 있지만 답변의 핵심 부분을 여기에 포함시키고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 유효하지 않게 될 수 있습니다. - [검토 중] (리뷰/저품절 게시물/16222564) –

+0

ack. 전체 이름과 링크를 추가했습니다. 건배. – kaskader

관련 문제