안녕하세요
그누4에서 사용하던 네이버 지도 연동 소스를 그누5에 사용 할려니 지도가 안나옵니다.
그누5 자체의 어떤 소스와 충돌이 있는지 궁금하네요
지도키값은 네이버에서 받아서 입력하였고 소스보기 하니까 주소 좌표도 잘 읽어 옵니다.
답변 2개 / 댓글 1개
<?
//네이버 지도API 좌표값 가져오기
$map_key = "d5be54e01ecc673752b5ce211998e8b4";
$map_addr = "경기도 남양주시 화도읍 마석중앙로 27";
$url = "http://openapi.map.naver.com/api/geocode.php?key=".$map_key."&encoding=utf-8&coord=latlng&query=".$map_addr;
//echo $url."<br/>";
$url = parse_url($url);
$fp = fsockopen($url['host'], 80, $errno, $errstr);
fputs($fp,"GET ".$url["path"].($url["query"] ? '?'.$url["query"] : '')." HTTP/1.0\r\n");
fputs($fp,"Host: " . $url["host"] . "\r\n");
fputs($fp,"User-Agent: PHP script\r\n");
fputs($fp,"Connection: close\r\n\r\n");
$api_txt = fread($fp,1024);
preg_match('/<x>.+<\/x>/',$api_txt, $x);
preg_match('/<y>.+<\/y>/',$api_txt, $y);
$x_point = preg_replace('/[^.0-9]/','',$x[0]);
$y_point = preg_replace('/[^.0-9]/','',$y[0]);
?>
<script type="text/javascript">
try {document.execCommand('BackgroundImageCache', false, true);} catch(e) {}
</script>
<script type="text/javascript" src="http://openapi.map.naver.com/openapi/naverMap.naver?ver=2.0&key=d5be54e01ecc673752b5ce211998e8b4"></script>
<div id="map" style="width:100%;height:400px;border:1px solid #CCCCCC;position:relative;">지도가 들어갈 공간</div>
<script type="text/javascript">
var x_point = <?=$x_point?>;
var y_point = <?=$y_point?>;
var oPoint = new nhn.api.map.LatLng(y_point, x_point);
nhn.api.map.setDefaultPoint('LatLng');
oMap = new nhn.api.map.Map('map' ,{
point : oPoint,
zoom : 8,
enableWheelZoom : true,
enableDragPan : true,
enableDblClickZoom : false,
mapMode : 0,
activateTrafficMap : false,
activateBicycleMap : false,
minMaxLevel : [ 1, 14 ],
size : new nhn.api.map.Size(100%, 400)
});
var mapZoom = new nhn.api.map.ZoomControl(); // 줌 컨트롤 선언
mapTypeChangeButton = new nhn.api.map.MapTypeBtn(2); // 지도 타입 버튼 사용
mapTypeChangeButton.setPosition({top:63, left:50}); // 지도 타입 버튼 위치
oMap.addControl(mapTypeChangeButton);
mapZoom.setPosition({left:10, top:10}); // 줌 컨트롤 위치
oMap.addControl(mapZoom);
var oSize = new nhn.api.map.Size(20, 20);
var oOffset = new nhn.api.map.Size(20, 20);
var oIcon = new nhn.api.map.Icon('http://static.naver.com/maps2/icons/pin_spot2.png', oSize, oOffset);
var oMarker1 = new nhn.api.map.Marker(oIcon, { title : '<?=$sub1_a?>' }); //마커 생성
oMarker1.setPoint(oPoint); //마커 표시할 좌표 선택
oMap.addOverlay(oMarker1);
</script>
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
소스 검토 좀 부탁 드립니다. 행복한 주말 되세요
지도 좌표는 잘 분석하는 것 같습니다. 네이버 지도 키 값도 올바르 구요
http://hwadolove.com/bbs/board.php?bo_table=tb_41&wr_id=4#