네이버 지도 스킨 사용시 수정문의
본문
사용한 스킨 : https://sir.kr/g5_skin/13747
제로나라님 네이버 지도 스킨입니다.
1번 현재 사용중인 소스를 네이버지도가 나오게끔 하려면 어떻게 수정을 해주면 되나요??
==================
1)) write.skin.php (현재 사용중인 소스)
==================
$ex3_filed = explode("|",$write[wr_3]);
$ext3_00 = $ex3_filed[0];
$ext3_01 = $ex3_filed[1];
$ext3_02 = $ex3_filed[2];
$ext3_03 = $ex3_filed[3];
<table width="100%" align=center>
<tr><td height="30" colspan="2" align="center" bgcolor="#5c5c5c"><span style="color: #FFFFFF; font-weight: bold;"><?=$title_msg?></span></td>
</tr>
<tr><td width="15%" align="center">주소</td>
<td class=write_fl style="padding-top:5px;">
<input class='frm_input' type=text name='ext3_00' value='<?=$ext3_00?>' size=8 maxlength=3 readonly <?=$config[cf_req_addr]?'required':'';?> itemname='우편번호 앞자리'>
<button type="button" class="btn_frmline" onclick="win_zip('fwrite', 'ext3_00', 'ext3_01', 'ext3_02', 'ext3_03');">주소 검색</button> (매물이 아파트인 경우엔 쓰지 않아도 됩니다.)
<br> <br>
<input class='frm_input' type=text name='ext3_01' value='<?=$ext3_01?>' size=50 readonly <?=$config[cf_req_addr]?'required':'';?> itemname='주소'>
<input class='frm_input' type=text name='ext3_03' value='<?=$ext3_03?>' size=30 <?=$config[cf_req_addr]?'required':'';?> itemname='상세주소'>
<font color=#999999>(상세주소)</font>
</td></tr>
</table>
==================
2)) write.skin.php (네이버지도 스킨 소스)
==================
<tr>
<th scope="row">주소</th>
<td>
<label for="wr_1" class="sound_only">우편번호</label>
<input type="text" name="wr_1" value="<?php echo $write['wr_1']; ?>" id="wr_1" class="frm_input" size="5" maxlength="6">
<button type="button" class="btn_frmline" onclick="win_zip('fwrite', 'wr_1', 'wr_2', 'wr_3', 'wr_4', 'wr_5');">주소 검색</button><br>
<input type="text" name="wr_2" value="<?php echo get_text($write['wr_2']) ?>" id="wr_2" class="frm_input" size="50">
<label for="wr_2">기본주소</label><br>
<input type="text" name="wr_3" value="<?php echo get_text($write['wr_3']) ?>" id="wr_3" class="frm_input" size="50">
<label for="wr_3">상세주소</label>
<br>
<input type="text" name="wr_4" value="<?php echo get_text($write['wr_4']) ?>" id="wr_4" class="frm_input" size="50" readonly="readonly">
<label for="wr_4">참고항목</label>
<input type="hidden" name="wr_5" value="<?php echo get_text($write['wr_5']); ?>">
</td>
</tr>
=================
list.skin.php (네이버지도 스킨 소스)
=================
<?php
$client_id = $board['bo_1'];
$client_secret = $board['bo_2'];
$adrress1 = $view['wr_2'].' '.$view['wr_3'];
$encText = urlencode($adrress1); //주소지를 받아온다.
$url = "https://openapi.naver.com/v1/map/geocode?query=".$encText; // json
// $url = "https://openapi.naver.com/v1/map/geocode.xml?query=".$encText; // xml
$is_post = false;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, $is_post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$headers = array();
$headers[] = "X-Naver-Client-Id: ".$client_id;
$headers[] = "X-Naver-Client-Secret: ".$client_secret;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$response = curl_exec ($ch);
//JSON타입을받아서 처리하는 과정이라 생각해라
$response_JSON = json_decode($response,true);
?>
<script type="text/javascript" src="https://openapi.map.naver.com/openapi/v3/maps.js?clientId=<?php echo $client_id?>"></script>
<div id="map" style="width:100%;height:260px; border:2px solid #dddddd;"></div>
<script>
var map = new naver.maps.Map('map', {center: new naver.maps.LatLng(<?php echo $response_JSON['result']['items'][0]['point']['y']?>, <?php echo $response_JSON['result']['items'][0]['point']['x']?>),zoom:9});
var marker = new naver.maps.Marker({
position: new naver.maps.LatLng(<?php echo $response_JSON['result']['items'][0]['point']['y']?>, <?php echo $response_JSON['result']['items'][0]['point']['x']?>),
map: map // map변수에 잡힌 지도에 마커를 찍는다는것
});
</script>
답변 2
1번과 2번의 글쓰기페이지의 차이는 없습니다.
단지 주소를 입력받는것이 전부이고
list.skin.php 파일에서
해당 필드에 들어간 주소를 불러오기만하면
자동으로 위도경도를 뽑아내어 지도로 출력하는 소스네요
정 안되시면 제작의뢰 유지보수로 하시는게 빠를듯합니다.