카카오 지도API 연동 게시판 모바일용 (마커클러스터러적용) mapV2.2 > 그누보드5 스킨

그누보드5 스킨

좋은 댓글과 좋아요는 제작자에게 큰힘이 됩니다.

카카오 지도API 연동 게시판 모바일용 (마커클러스터러적용) mapV2.2 정보

게시판 카카오 지도API 연동 게시판 모바일용 (마커클러스터러적용) mapV2.2

첨부파일

모바일용_mapv2.2.zip (40.3K) 76회 다운로드 2023-05-02 21:16:11 포인트 차감10
테스트한 버전5.5.8.2.8
호환 가능 버전5.4 이상

본문

Fix

23.08.04 일자로 다른 작업으로 인해 부득이하게 테스트 페이지 삭제처리 했습니다.

 

안녕하세요~!!

카카오 지도api 연동 게시판 PC버전에 이어 모바일(mobile)용으로 제작하게 되어서 공유 해봅니다.

많은 분들이 모바일용에 관해서 문의를 주셔서 틈틈히 시간을 내어서 제작하게 되었습니다.

아직은 미흡한 부분이 있을 수 있습니다.

 

PC, 모바일기기, 태블릿 환경에서 테스트 완료되었습니다. (반응형 아닙니다.)

 

수정된 부분

view.skin.php

 

1. PC버전에 있는 지도보기와 로드뷰 부분은 삭제하였습니다.

기능상 특별히 필요성이 없다고 판단하여 삭제조치함. (필요하신 분들은 PC버전의 내용을 참고하여 적용하시면 됩니다.)

 

2. 코멘트 부분 삭제 조치함.

 

3. 스킨의 레이아웃 부분은 모바일용에 맞게 재수정 함.

 

661996078_1683029490.0518.png

 

적용방법

 

1. 파일을 다운받아 압축해제

2. wm_include 폴더 root에 적용 (단, PC버전을 설치하신 분은 적용하지 않으셔도 됩니다.)

3. skin 폴더는 skin폴더에 적용 (/mobile/skin 폴더에 적용하시면 됩니다.)

 

수정해야 할 파일

 

wm_include 폴더에 있는 파일 수정

map.ajax.php


$sql = " select * from g5_write_mapv2 order by wr_id asc ";
// g5_write_mapv2 (본인의 게시판명으로 수정)

 

wr_id.ajax.php


$bo_table ="mapv2";
// 본인의 게시판명으로 수정

 

테스트환경

php 7.2 / 7.4

mysql 5.7 ~ 8.0

그누보드 5.4 ~ 5.5.8.2.8

 

오늘도 즐거운 하루 되세요~^^

 

추천
13

댓글 전체

좋은스킨 감사합니다. 테이블명변경하고 여분필드1에 api키 입력하고 셋팅했는데 주소입력누르면 주소입력창이뜨질 안네요....혹시 다른 설정이 필요할까요? device=mobile로 했습니다.
웹메이킹 님 좋은 스킨자료 감사~ 감사합니다~

저도 한번 적용해보려~  끙끙~ 그리며~ 수정해보고 있는데요~~

wm_include 폴더에 있는 파일 수정 하는것
아래처럼 수정하여 사용하면 안되나요? (잘~ 안되어서 물어봅니다)
홈페이지에 지도 게시판이 1개 지도 보는것은 상관없겠지만
지도 게시판이 여러개 있을경우 적용해보려합니다~
(아니면  스킨 폴더에 wm_include폴더 파일을 넣고 게시판 마다 달리 적용을 하면 좋을것 같은데... 아직 초보여서 잘~ 모르겠습니다~

웹메이킹님과 고수님들~ 한번 봐주세요~~[꾸벅]
댓글에 미리 감사를 드립니다~
 

map.ajax.php

$sql = " select * from g5_write_mapv2 order by wr_id asc ";
// g5_write_mapv2 (본인의 게시판명으로 수정)
 
==>  $sql = " select * from g5_".$bo_table." order by wr_id asc ";




wr_id.ajax.php

$bo_table ="mapv2";
// 본인의 게시판명으로 수정
 

==>  $bo_table = $row['bo_table'];
여러개의 게시판에서 사용하는 방법은 다음과 같이 하시면 됩니다.

map.ajax.php 파일 수정

<?php
header("Content-Type: application/json");
include_once './_common.php';

// 'bo_table' 매개변수로 게시판 이름이 전달되는지 확인합니다.
if (!isset($_POST['bo_table']) || empty($_POST['bo_table'])) {
    echo json_encode(array("error" => "Invalid board name"));
    exit;
}

$bo_table = $_POST['bo_table']; // 게시판 이름을 매개변수로 받아옵니다.

$sql = "SELECT * FROM g5_write_".$bo_table." ORDER BY wr_id ASC";
$result = sql_query($sql);

$position = array();
while ($row = sql_fetch_array($result)) {
    $lat = $row['wr_5'];
    $lng = $row['wr_6'];
    $wr_id = $row['wr_id'];
    $item = array("lat" => $lat, "lng" => $lng, "wr_id" => $wr_id);
    array_push($position, $item);
}

$board = array();
$board['positions'] = $position;

// 숫자로 표기되는 부분은 숫자 그대로 출력하도록 옵션 설정
echo json_encode($board, JSON_NUMERIC_CHECK);
?>


wr_id.ajax.php 파일 수정

<?php
include_once './_common.php';
include_once(G5_LIB_PATH.'/thumbnail.lib.php');

// 'bo_tables' 매개변수로 여러 개의 게시판 이름이 배열 형태로 전달됩니다.
if (!isset($_POST['bo_tables']) || empty($_POST['bo_tables'])) {
    echo "게시판 이름이 제공되지 않았습니다";
    exit;
}

$wr_id = $_POST['wr_id'];
$bo_tables = $_POST['bo_tables']; // 여러 개의 게시판 이름이 배열 형태로 전달됩니다.

// 각 게시판에 대한 데이터를 가져옵니다.
$results = array();
foreach ($bo_tables as $bo_table) {
    $sql = " SELECT * FROM g5_write_".$bo_table." WHERE wr_id = '$wr_id' ";
    $row = sql_fetch($sql);
    $thumb = get_list_thumbnail($bo_table, $row['wr_id'], 75, 73, false, true);
   
    // 각 게시판의 데이터를 결과 배열에 추가합니다.
    $result = array(
        'bo_table' => $bo_table,
        'subject' => $row['wr_subject'],
        'thumbnail_src' => $thumb['src'],
        'desc' => $row['wr_3'],
        'jibun' => $row['wr_4'],
        'link' => $row['wr_link1']
    );
    $results[] = $result;
}

// JSON 형태로 결과를 출력합니다.
header('Content-Type: application/json');
echo json_encode($results);
exit;
?>


list.skin.php 파일에서 ajax 호출할때 다음과 같이 하시면 됩니다.

[code]
<script>
  const wr_id = <?php echo $list[$i]['wr_id] ?>;
  const boardName = 'aaa'; // 특정 게시판명
  const ajaxUrl = 'wr_id.ajax.php';

  // AJAX 호출
  $.ajax({
    type: 'POST',
    url: g5_url+"/wm_include/main_map/wr_id.ajax.php",
    data: {
      wr_id: wr_id,
      bo_table: boardName // 게시판 이름을 매개변수로 전달합니다.
    },
    success: function (data) {
      // AJAX 호출에서 반환된 데이터를 처리합니다.
      // 예를 들어 데이터로 웹페이지의 특정 부분을 업데이트할 수 있습니다.
    },
    error: function (xhr, status, error) {
      // 오류 처리를 수행합니다.
    }
  });
</script>
웹메이킹 님~~~~
친절한 설명 감사합니다~~

아직 초보여서  이해는 다~ 못하지만~
열심히 적용해보겠습니다~~

다시한번 감사의 인사 드립니다~~
날씨가 너무 많이 덥네요~~
더운날씨에 건강관리 조심하시고~
시원한 여름 휴가 및 좋은시간 되세요~~
감사합니다~[꾸벅]
전체 2,430 |RSS
그누보드5 스킨 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT