네이버 지도 api 채택완료

기존에 아래와같이 소스코드로 주소입력시 네이버지도api로 지도를 표시했었는데요,

이번에 네이버 키 방식으로 바뀌면서 사용이 중지되었습니다.

새로운 api키를 발급받았는데요, 어떻게 수정해야하는지 도움을 요청드립니다.

 

Copy
<? // 지도의 폭 $map_width = 740; // 지도의 높이 $map_height = 330; // 지도의 축적 1~11 사이의 자연수. 1에 가까울 수록 지도가 확대 $map_zoom = 3; // 네이버 지도api 키값 //$map_key = "key=dba4bf99bad7476766b590f139b0ed9f";  2016.12.16부터 사용불가$map_key = "key=JhnKdJNYe8ic2tJdEcSM"; // 쿼리 돌릴 주소 $address = substr($write[wr_7], 8); // 3번 여유 필드에 저장 되어 있는 주소의 우편번호를 삭제 $adrress1 = str_replace("|","",$address); // | 태그 삭제 $map_query = str_replace(" ","%20",$adrress1); // 3번 여유 필드에 저장 되어 있는 주소의 공백을 제거하여 변수에 저장 // euc-kr로 변환 //$map_cquery =iconv("utf-8","euc-kr","$map_query"); // 여기부터 주소 검색 xml 파싱 $pquery = $map_key. "&query=". $map_query;     $fp = fsockopen ("map.naver.com", 80, $errno, $errstr, 30);     if (!$fp) {         echo "$errstr ($errno)";     } else {         fputs($fp, "GET /api/geocode.php?");         fputs($fp, $pquery);         fputs($fp, " HTTP/1.1\r\n");         fputs($fp, "Host: map.naver.com\r\n");         fputs($fp, "Connection: Close\r\n\r\n");                 $header = "";         while (!feof($fp)) {             $out = fgets ($fp,512);             if (trim($out) == "") {                 break;             }             $header .= $out;         }                 $mapbody = "";         while (!feof($fp)) {             $out = fgets ($fp,512);             $mapbody .= $out;         }                 $idx = strpos(strtolower($header), "transfer-encoding: chunked");                 if ($idx > -1) { // chunk data             $temp = "";             $offset = 0;             do {                 $idx1 = strpos($mapbody, "\r\n", $offset);                 $chunkLength = hexdec(substr($mapbody, $offset, $idx1 - $offset));                                 if ($chunkLength == 0) {                     break;                 } else {                     $temp .= substr($mapbody, $idx1+2, $chunkLength);                     $offset = $idx1 + $chunkLength + 4;                 }             } while(true);             $mapbody = $temp;         }         fclose ($fp);     }    // 여기까지 주소 검색 xml 파싱 // 여기부터 좌표값 변수에 등록 $map_x_point_1=explode("<x>", $mapbody); $map_x_point_2=explode("</x>", $map_x_point_1[1]); $map_x_point=$map_x_point_2[0]; $map_y_point_1=explode("<y>", $mapbody); $map_y_point_2=explode("</y>", $map_y_point_1[1]); $map_y_point=$map_y_point_2[0]; // 여기까지 좌표값 변수에 등록 ?> <!-- 네이버 지도 키 값 --> <SCRIPT language="JavaScript" src="http://map.naver.com/js/naverMap.naver?key=JhnKdJNYe8ic2tJdEcSM"></SCRIPT> <!-- 네이버 지도 키 값 끝 --> <? if ($view[wr_7]) { // 임시필드인 wr_3에 주소가 있다면 네이버 api 지도를 출력 ?> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <!-- 지도 출력 --> <div id='mapContainer'></div> <!-- 지도 출력 끝 --> </td> </tr> </table> <? } ?> <SCRIPT language="JavaScript"> <!-- var x_point = <? echo $map_x_point; ?>; var y_point = <? echo $map_y_point; ?>; var icon = new NIcon("<?=$board_skin_path?>/img/map_icon.png", new NSize(26,29)); // 아이콘파일을 계정에 만드시고(지정된 위치에 표시되는 아이콘입니다) 이미지 주소 및 크기를 변경해주세요 var loc_Point = new NPoint(x_point,y_point);  // 포인트 표시 var map_mark = new NMark(loc_Point, icon ); // 지도에 아이콘 표시 var mapObj = new NMap(document.getElementById('mapContainer'),<? echo $map_width; ?>,<? echo $map_height; ?>); // 지도창 var infowin = new NInfoWindow(); var zoom = new NZoomControl(); var zoomlevel = <? echo $map_zoom; ?> mapObj.addOverlay(map_mark); // 지도에 마크표시 mapObj.setCenterAndZoom(loc_Point,zoomlevel); // 지도 중앙 mapObj.addOverlay(infowin); zoom.setAlign("left"); // 줌 조절 버튼 왼쪽에 위치 zoom.setValign("bottom"); // 줌 조절 버튼 아래에 위치 // mapObj.enableWheelZoom();  지도 안에서 휠로 줌 조절 가능하게 하려면 주석을 풀어주세요 mapObj.addControl(zoom); //--> </SCRIPT>
 

답변 1개

이런 수정은 간단하게 의뢰를 하시는게 나아보입니다..

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고