form 이 적용이 안됩니다. 이유를 모르겠어요. 채택완료
천사나라
8년 전
조회 2,598
네이버 지도 api 를 써볼려고 하는데 naver 에서 제공하는 기본 예제를 약간 변경시켰는데...
주소를 "풍덕천로" 라고 입력했습니다.
form 을 쓰지 않은 소스는 정상적으로 출력이 됩니다.: http://awamp.duckdns.org/navermap.php">http://awamp.duckdns.org/navermap.php
form 을 써서 검색을 하면 안됩니다. : http://awamp.duckdns.org/navermap2.php">http://awamp.duckdns.org/navermap2.php 이렇게 하면 검색어를 바꿔도 항상 같은 위치만 출력이 되는데 이유를 모르겠습니다.
검색을 하기위해 GET 값을 변수에 넣었는데 뭔가 잘못한건가요?
var myaddress = $_GET['address']; 대신에 도로명을 소스에 직접 넣으면 작동합니다. navermap.php 처럼.....
아래 navermap2.php 의 소스입니다.
</p><p>
</p><p><!DOCTYPE html></p><p><html></p><p> <head></p><p> <meta charset="UTF-8"></p><p> <title>네이버 지도 API - 주소로 지도 표시하기</title></p><p> <script type="text/javascript" src="<a href="<a href="https://openapi.map.naver.com/openapi/v3/maps.js?clientId=9DpdzSZN8i4b6ltCv9bT&submodules=geocoder" target="_blank" rel="noopener noreferrer">https://openapi.map.naver.com/openapi/v3/maps.js?clientId=9DpdzSZN8i4b6ltCv9bT&submodules=geocoder</a>"><a href="https://openapi.map.naver.com/openapi/v3/maps.js?clientId=9DpdzSZN8i4b6ltCv9bT&submodules=geocoder" target="_blank" rel="noopener noreferrer">https://openapi.map.naver.com/openapi/v3/maps.js?clientId=9DpdzSZN8i4b6ltCv9bT&submodules=geocoder</a></a>"></script></p><p> </head></p><p> <body></p><p> <div id="map" style="width:100%;height:600px;"></div></p><p> <script></p><p> var map = new naver.maps.Map('map');</p><p> var myaddress = $_GET['address'];// 도로명 주소나 지번 주소만 가능 (건물명 불가!!!!)</p><p> naver.maps.Service.geocode({address: myaddress}, function(status, response) {</p><p> if (status !== naver.maps.Service.Status.OK) {</p><p> return alert(myaddress + '의 검색 결과가 없거나 기타 네트워크 에러');</p><p> }</p><p> var result = response.result;</p><p> // 검색 결과 갯수: result.total</p><p> // 첫번째 결과 결과 주소: result.items[0].address</p><p> // 첫번째 검색 결과 좌표: result.items[0].point.y, result.items[0].point.x</p><p> var myaddr = new naver.maps.Point(result.items[0].point.x, result.items[0].point.y);</p><p> map.setCenter(myaddr); // 검색된 좌표로 지도 이동</p><p> // 마커 표시</p><p> var marker = new naver.maps.Marker({</p><p> position: myaddr,</p><p> map: map</p><p> });</p><p> // 마커 클릭 이벤트 처리</p><p> naver.maps.Event.addListener(marker, "click", function(e) {</p><p> if (infowindow.getMap()) {</p><p> infowindow.close();</p><p> } else {</p><p> infowindow.open(map, marker);</p><p> }</p><p> });</p><p> // 마크 클릭시 인포윈도우 오픈</p><p> var infowindow = new naver.maps.InfoWindow({</p><p> content: '<h4> [네이버 개발자센터]</h4><a href="<a href="<a href="https://developers.naver.com" target="_blank" rel="noopener noreferrer">https://developers.naver.com</a>"><a href="https://developers.naver.com" target="_blank" rel="noopener noreferrer">https://developers.naver.com</a></a>" target="_blank"><img src="<a href="<a href="https://developers.naver.com/inc/devcenter/images/nd_img.png" target="_blank" rel="noopener noreferrer">https://developers.naver.com/inc/devcenter/images/nd_img.png</a>"><a href="https://developers.naver.com/inc/devcenter/images/nd_img.png" target="_blank" rel="noopener noreferrer">https://developers.naver.com/inc/devcenter/images/nd_img.png</a></a>"></a>'</p><p> });</p><p> });</p><p> </script></p><p>
</p><p><form action="navermap2.php" method="get"></p><p><input type="text" name="address" "></p><p><input type="submit" name="submit" value="Search"></p><p></form></p><p>
</p><p></body></p><p></html></p><p>
</p><p>
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
답변을 작성하려면 로그인이 필요합니다.
로그인