송효섭

mysqltest 브랜치 생성 -> 업데이트 예정

1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 +
3 <head> 4 <head>
4 <meta charset="utf-8"> 5 <meta charset="utf-8">
5 <title>geolocation으로 마커 표시하기</title> 6 <title>geolocation으로 마커 표시하기</title>
6 - 7 +
7 </head> 8 </head>
9 +
8 <body> 10 <body>
9 -<p style="margin-top:-12px"> 11 + <p style="margin-top:-12px">
10 - <b>Chrome 브라우저는 https 환경에서만 geolocation을 지원합니다.</b> 참고해주세요. 12 + <b>Chrome 브라우저는 https 환경에서만 geolocation을 지원합니다.</b> 참고해주세요.
11 -</p> 13 + </p>
12 -<div id="map" style="width:500px;height:350px;"></div> 14 + <div id="map" style="width:500px;height:350px;"></div>
13 - 15 +
14 -<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=a3386042ab2e0550ea06d265855b452c">//kakao map api 주소 받아옴</script> 16 + <script type="text/javascript"
15 -<script> 17 + src="//dapi.kakao.com/v2/maps/sdk.js?appkey=a3386042ab2e0550ea06d265855b452c">//kakao map api 주소 받아옴</script>
16 -const near=require('study.js'); 18 + <script>
17 - 19 +
18 -var mapContainer = document.getElementById('map'), // 지도를 표시할 div 20 + const near = require('study.js');
19 - mapOption = { 21 +
20 - center: new kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표 22 + var mapContainer = document.getElementById('map'), // 지도를 표시할 div
21 - level: 10 // 지도의 확대 레벨 23 + mapOption = {
22 - }; 24 + center: new kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표
23 - 25 + level: 10 // 지도의 확대 레벨
24 -var map = new kakao.maps.Map(mapContainer, mapOption); // 지도를 생성합니다 26 + };
25 - 27 +
26 -// HTML5의 geolocation으로 사용할 수 있는지 확인합니다 28 + var map = new kakao.maps.Map(mapContainer, mapOption); // 지도를 생성합니다
27 -if (navigator.geolocation) { 29 +
28 - 30 + // HTML5의 geolocation으로 사용할 수 있는지 확인합니다
29 - // GeoLocation을 이용해서 접속 위치를 얻어옵니다 31 + if (navigator.geolocation) {
30 - navigator.geolocation.getCurrentPosition(function(position) { 32 +
31 - 33 + // GeoLocation을 이용해서 접속 위치를 얻어옵니다
32 - var lat = position.coords.latitude, // 위도 34 + navigator.geolocation.getCurrentPosition(function (position) {
33 - lon = position.coords.longitude; // 경도 35 +
34 - console.log(lat); 36 + var lat = position.coords.latitude, // 위도
35 - console.log(lon); 37 + lon = position.coords.longitude; // 경도
36 - var locPosition = new kakao.maps.LatLng(lat, lon), // 마커가 표시될 위치를 geolocation으로 얻어온 좌표로 생성합니다 38 + console.log(lat);
37 - message = '<div style="padding:5px;">여기에 계신가요?!</div>'; // 인포윈도우에 표시될 내용입니다 39 + console.log(lon);
38 - 40 + var locPosition = new kakao.maps.LatLng(lat, lon), // 마커가 표시될 위치를 geolocation으로 얻어온 좌표로 생성합니다
39 - // 마커와 인포윈도우를 표시합니다 41 + message = '<div style="padding:5px;">여기에 계신가요?!</div>'; // 인포윈도우에 표시될 내용입니다
40 - displayMarker(locPosition, message); 42 +
41 - 43 + // 마커와 인포윈도우를 표시합니다
42 - }); 44 + displayMarker(locPosition, message);
43 - 45 +
44 -} else { // HTML5의 GeoLocation을 사용할 수 없을때 마커 표시 위치와 인포윈도우 내용을 설정합니다 46 + });
45 - 47 +
46 - var locPosition = new kakao.maps.LatLng(33.450701, 126.570667), 48 + } else { // HTML5의 GeoLocation을 사용할 수 없을때 마커 표시 위치와 인포윈도우 내용을 설정합니다
47 - message = 'geolocation을 사용할수 없어요..' 49 +
48 - 50 + var locPosition = new kakao.maps.LatLng(33.450701, 126.570667),
49 - displayMarker(locPosition, message); 51 + message = 'geolocation을 사용할수 없어요..'
50 -} 52 +
51 - 53 + displayMarker(locPosition, message);
52 - 54 + }
53 - 55 +
54 - 56 +
55 -displayShows(); 57 +
56 -function displayShows(){ 58 +
57 - var imageSrc = "https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/markerStar.png"; 59 + displayShows();
58 - var near_list=near(lat,lon); 60 + function displayShows() {
59 - var positions=[]; 61 + var imageSrc = "https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/markerStar.png";
60 - for(var i =0;i<near_list.length;i++){ 62 + var near_list = near(lat, lon);
61 - positions.push({title: id, 63 + var positions = [];
62 - lating: new kaka0.maps.Lating(near_list[i][1],near_list[i][2])}) 64 + for (var i = 0; i < near_list.length; i++) {
63 - } 65 + positions.push({
64 -for (var i = 0; i < positions.length; i ++) { 66 + title: id,
65 - 67 + lating: new kakao.maps.Lating(near_list[i][1], near_list[i][2])
66 - // 마커 이미지의 이미지 크기 입니다 68 + })
67 - var imageSize = new kakao.maps.Size(24, 35); 69 + }
68 - 70 + for (var i = 0; i < positions.length; i++) {
69 - // 마커 이미지를 생성합니다 71 +
70 - var markerImage = new kakao.maps.MarkerImage(imageSrc, imageSize); 72 + // 마커 이미지의 이미지 크기 입니다
71 - 73 + var imageSize = new kakao.maps.Size(24, 35);
72 - // 마커를 생성합니다 74 +
73 - var marker = new kakao.maps.Marker({ 75 + // 마커 이미지를 생성합니다
74 - map: map, // 마커를 표시할 지도 76 + var markerImage = new kakao.maps.MarkerImage(imageSrc, imageSize);
75 - position: positions[i].latlng, // 마커를 표시할 위치 77 +
76 - title : positions[i].title, // 마커의 타이틀, 마커에 마우스를 올리면 타이틀이 표시됩니다 78 + // 마커를 생성합니다
77 - image : markerImage // 마커 이미지 79 + var marker = new kakao.maps.Marker({
78 - }); 80 + map: map, // 마커를 표시할 지도
79 - } 81 + position: positions[i].latlng, // 마커를 표시할 위치
80 -} 82 + title: positions[i].title, // 마커의 타이틀, 마커에 마우스를 올리면 타이틀이 표시됩니다
81 -// 지도에 마커와 인포윈도우를 표시하는 함수입니다 83 + image: markerImage // 마커 이미지
82 -function displayMarker(locPosition, message) { 84 + });
83 - 85 + }
84 - // 마커를 생성합니다 86 + }
85 - var marker = new kakao.maps.Marker({ 87 + // 지도에 마커와 인포윈도우를 표시하는 함수입니다
86 - map: map, 88 + function displayMarker(locPosition, message) {
87 - position: locPosition 89 +
88 - }); 90 + // 마커를 생성합니다
89 - 91 + var marker = new kakao.maps.Marker({
90 - var iwContent = message, // 인포윈도우에 표시할 내용 92 + map: map,
91 - iwRemoveable = true; 93 + position: locPosition
92 - 94 + });
93 - // 인포윈도우를 생성합니다 95 +
94 - var infowindow = new kakao.maps.InfoWindow({ 96 + var iwContent = message, // 인포윈도우에 표시할 내용
95 - content : iwContent, 97 + iwRemoveable = true;
96 - removable : iwRemoveable 98 +
97 - }); 99 + // 인포윈도우를 생성합니다
98 - 100 + var infowindow = new kakao.maps.InfoWindow({
99 - // 인포윈도우를 마커위에 표시합니다 101 + content: iwContent,
100 - infowindow.open(map, marker); 102 + removable: iwRemoveable
101 - 103 + });
102 - // 지도 중심좌표를 접속위치로 변경합니다 104 +
103 - map.setCenter(locPosition); 105 + // 인포윈도우를 마커위에 표시합니다
104 -} 106 + infowindow.open(map, marker);
105 -</script> 107 +
108 + // 지도 중심좌표를 접속위치로 변경합니다
109 + map.setCenter(locPosition);
110 + }
111 + </script>
106 </body> 112 </body>
113 +
107 </html> 114 </html>
...\ No newline at end of file ...\ No newline at end of file
......
1 var mysql = require('mysql'); 1 var mysql = require('mysql');
2 2
3 -module.exports={ 3 +module.exports = {
4 - nearShow: function(lat,lon){ 4 + nearShow: function (lat, lon) {
5 - var near_show_list=[]; 5 + var near_show_list = [];
6 - var connection = mysql.createConnection({ 6 + var connection = mysql.createConnection({
7 - "host": "culturegallery.cm2bwcuyukrm.us-east-1.rds.amazonaws.com", 7 + "host": "culturegallery.cm2bwcuyukrm.us-east-1.rds.amazonaws.com",
8 - "user":"root", 8 + "user": "root",
9 - "password": "dldbwp1207", 9 + "password": "dldbwp1207",
10 - "port": "3306", 10 + "port": "3306",
11 - "database": "showdata" 11 + "database": "showdata"
12 - }); 12 + });
13 -
14 - connection.connect();
15 - var dataNum=0;
16 - connection.query('SELECT COUNT (*) AS cnt FROM SHOW_DATA',function(error,results,field){
17 - if(error){
18 - console.log(error);
19 - }
20 - console.log(results[0].cnt);
21 - dataNum=results[0].cnt;
22 - });
23 13
24 - connection.query('SELECT id,latitude,longitude FROM SHOW_DATA',function(error,results,field){ 14 + connection.connect();
25 - if(error){ 15 + var dataNum = 0;
26 - console.log(error); 16 + connection.query('SELECT COUNT (*) AS cnt FROM SHOW_DATA', function (error, results, field) {
27 - } 17 + if (error) {
28 - console.log([lat,lon]); 18 + console.log(error);
29 - for(var i=0;i<dataNum;i++){
30 - var latgap=(lat-results[i].latitude)*110;
31 - var longap=(lon-results[i].longitude)*91;
32 - var cal=latgap*latgap+longap*longap;
33 - if(cal<=1600){
34 - console.log(results[i].id);
35 - near_show_list.push([results[i].id,results[i].latitude,results[i].longitude]);
36 } 19 }
37 - } 20 + console.log(results[0].cnt);
38 - }); 21 + dataNum = results[0].cnt;
39 - 22 + });
40 - connection.end(); 23 +
41 - return near_show_list; 24 + connection.query('SELECT id,latitude,longitude FROM SHOW_DATA', function (error, results, field) {
25 + if (error) {
26 + console.log(error);
27 + }
28 + console.log([lat, lon]);
29 + for (var i = 0; i < dataNum; i++) {
30 + var latgap = (lat - results[i].latitude) * 110;
31 + var longap = (lon - results[i].longitude) * 91;
32 + var cal = latgap * latgap + longap * longap;
33 + if (cal <= 1600) {
34 + console.log(results[i].id);
35 + near_show_list.push([results[i].id, results[i].latitude, results[i].longitude]);
36 + }
37 + }
38 + });
39 +
40 + connection.end();
41 + // return near_show_list;
42 } 42 }
43 } 43 }
......