반응형

Map(WEB) 24

vworld 지도 만들기(17) - 개별공시지가 표시하기(5) : PHP(3)

나. vworld_function.php  (1) 사용자 정의 함수 구문    function getAddr($coord, $vworldKey) {        처리 구문    }?> php의 함수도 일반적인 함수 구문과 동일합니다.function 다음에 함수명을 적고, 괄호 안에 전달한 인수를 적습니다. (2) getAddr 함수의 내용(가) url과 전달할 인수 만들기$ch = curl_init(); $url = 'https://api.vworld.kr/req/address'; // URL $queryParams = '?' . 'key=' . $vworldKey; // API Key $queryParams .= '&service=' . "address"; $queryParams .= '&format=..

Map(WEB) 2025.03.07

vworld 지도 만들기(16) - 개별공시지가 표시하기(4) : PHP(2)

1. PHP 파일php 파일은 html 파일에서 호출하는 show_landprice.php 파일과 사용자 정의함수가 들어 있는 vword_function.php 2개입니다. 2. 주소 JSON 파일의 구조Geocoder API 2.0에서 제공하는 정보에 주소(아래 표에서 text)만 있는 줄 알았더니zipcode와 법정동 코드인 level4LC가 있어서, data.go.kr을 이용하지 않고, 이것을 이용하겠습니다.그리고, 동호수가 detail에 있어서 이것도 이용했습니다.   3. 간단한 코드 설명가. show_landprice.php(1) include로 파일을 불러옴include는 다른 언어의 import와 유사한 기능입니다.// 변수($VworldKey) 지정 파일 불러오기 include "./wp..

Map(WEB) 2025.03.06

vworld 지도 만들기(15) - 개별공시지가 표시하기(3) : PHP(1)

이번에는 PHP를 이용해 만드는데 popup창과 alert창이 아니라지도 위의 div 태그에 표시해 보겠습니다. 그동안 계속 cloudaccess.net의 무료 호스팅에서 작업했는데 안 돼서(vworld.kr이 외국 서버를 차단하는 듯, data.go.kr은 문제없음), iwinv.kr의 웹 호스팅에서 작업했습니다.   1. 토지정보 표시영역 설정 토지 정보   head 태그에 style을 지정하는데 class가 txtLand인 것의 position을 absolute로 지정하고, 위 여백을 20px, 왼쪽 여백을 20px, 배경색은 blue, 폭은 화면의 80% 등으로 지정합니다. 토지 정보그리고, txtLand가 들어 있는 div 태그에 '토지 정보'란 글자를 입력합니다. 그러면 아래와 같이 됩니..

Map(WEB) 2025.03.05

vworld 지도 만들기(14) - 개별공시지가 표시하기(2) : JSONP

이번에는 JSONP를 이용해 코드를 만들어보겠습니다. JSONP를 Wikipedia에서 찾아보니 아래와 같은 설명이 나옵니다. 신기한 것은 JSOP가 CORS를 회피하기 위한 것인데, 아래 결론은 CORS로 대체되고 있다고 합니다. 아이러니네요... 1. 샘플 코드샘플 코드를 HTML 문서에 넣으면 아래와 같이 됩니다.인증키와 도메인은 자신의 것으로 수정하기 바랍니다.  샘플코드는 url이 http://api.vworld.kr/... 라고 되어 있는데, 이렇게 하고 실행하면 https라야 한다는 메시지가 나오므로 http를 https로 수정하고 실행하면 {indvdLandPrices:{…}}이라고 배열 형태로 결과가 콘솔창에 표시됩니다.왼쪽의 삼각형 표시를 계속 누르면 JSONP는 JSON형태가 아니..

Map(WEB) 2025.03.04

vworld 지도 만들기(13) - 개별공시지가 표시하기(1) : JavaScript

이제 법정동 코드도 구했으니 법정동 코드를 이용해 해당 토지에 대한 개별 공시지가를 구해 보겠습니다. 1. API 검색먼저 해당 API를 검색해야 하는데,오픈API에서 API레퍼런스를 누른 후 국가중점데이터API의 레퍼런스 버튼을 누릅니다. 그러면 개별공시가 다음에 WMS, WFS, 속성이 나오는데, WMS는 맵 이미지를 조회하는 기능이고, WFS는 도형 및 속성값을 포함한 피처 집합을 조회하는 기능이라는데, 결괏값을 보니 해당 토지의 경계점 좌표와 개별공시지가를 반환합니다. 그리고, 개별공시지가속성조회는 해당 토지에 대한 개별공시지가를 조회하는 기능이므로 이것을 이용하겠습니다. 2. 샘플 코드위에서 개별공시지가속성조회를 누르면맨 아래에 샘플코드가 JAVA, JavaScript, JSONP, PHP, P..

Map(WEB) 2025.03.03

오픈 API를 이용한 법정동 코드 조회(5) - PHP(2)

이번에는 HTML과 PHP를 연결해서 클릭한 지점에 대한 주소뿐만 아니라 법정동 코드를 표시해 보겠습니다. 2. 코드 2 가. html 파일파일명은 search_legal_dong3.html 정도로 하면 됩니다. 나. php 파일파일명은 get_legal_dong.php입니다. $dong을 get 방식으로 받아서 처리하기 위해 주석 처리했던 부분을 해제하고,$dong을 직접 입력했던 부분은 주석 처리한 것 말고는 동일합니다. 다. html 파일 설명 (1) XMLHttpRequest()의 open 대상이 달라졌음get_text ='get_legal_dong.php?dong='+dong; xhr=new XMLHttpRequest(); xhr.open("GET", get_text); JavaScri..

Map(WEB) 2025.02.28

오픈 API를 이용한 법정동 코드 조회(4) - PHP(1)

JavaScript로 작성한 funciton을 PHP로 구현해 보겠습니다. WebHosting은 대부분 APM(Apache + PHP + MySql)으로 구성된 것이 많으므로 PHP를 이용할 수 있습니다.PHP는 서버단에서 작동하는 언어라는 것이 자바스크립트와 다릅니다. html과 php를 연결해서 구현하려고 하다 보니 어려워서 PHP 먼저 하고,다음 편에서 두 개를 연결하는 것을 해보겠습니다. 1. 코드 1 가. 코드파일명은 get_legal_code.php입니다.  나. 코드 설명 (1) 인증 키 정보 불러오기include "wp-admin\config.php"; config.php 파일을 불러들이는 것입니다.config.php 파일에 공공데이터포털의 인증키가 $DatagokrKey로 등록되어 있고,..

Map(WEB) 2025.02.27

오픈 API를 이용한 법정동 코드 조회(3) - JavaScript(2)

2. 코드 2오픈 API를 이용한 법정동 코드 조회(2) - JavaScript(1)에서는송파동에 대한 법정동 코드만을 구할 수 있었는데, 이것을 좌표 클릭 시 표시되는 주소를 이용해서해당 동(리)에 대한 법정동 코드를 구하려고 합니다. 지도를 클릭하면 해당 지점에 대한 주소를 표시하는 글에 위 코드를 붙여서 클릭한 지점의 법정동 코드를 표시해 보겠습니다. 인증키는 입력하지 않았으므로 자신의 것으로 채우기 바랍니다.  가. function으로 변경 송파동에 대한 법정동 코드를 구하는 코드를function get_legal_code(dong) {안에 넣고, dong을 인수로 전달합니다. 나. 지번 주소에서 법정동 추출const match = result.response.result[0].text.mat..

Map(WEB) 2025.02.26

오픈 API를 이용한 법정동 코드 조회(2) - JavaScript(1)

먼저 자바스크립트로 하는 방법을 알아보겠습니다. 1. 코드 1가. 코드이것은 alert창에 송파동의 법정동 코드를 출력하는 코드입니다. 인증키는 입력하지 않았으므로 자신의 것으로 채우기 바랍니다.  나. 코드 설명 (1) XMLHttpRequestXMLHttpRequest에 대한 설명을 아래를 참고 바랍니다.xhr=new XMLHttpRequest();xhr.open("GET", searchUrl);      xhr.onreadystatechange = function () {          if (this.readyState == 4 && this.status == 200) {              전송 결과 성공시 코드    }      };     xhr.send();  XMLHttpReques..

Map(WEB) 2025.02.25
반응형