메뉴 건너뛰기

조회 수 488 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

. 게시판 관리자에서

test

게시판을 만들어 준다.

 

1. 테마의 tail.php 나 index.php 혹은 적당한 곳에 아래 스크립트 넣기

- 자동으로 밴드글을 가져오는 역할을 함.

 

<script>

$.ajax({
    url: '/api/band_posts.php', // 요청 할 주소
    async: false, // false 일 경우 동기 요청으로 변경
    type: 'POST', // GET, PUT
    data: {
    }, // 전송할 데이터
    dataType: 'text', // xml, json, script, html
    success: function(jqXHR) {console.log('success');}, // 요청 완료 시
    error: function(jqXHR) {console.log('error');}, // 요청 실패.
});

</script>

 

 

 

 

2. 해당 경로에 아래 파일 만들어 넣기

 

/*    /api/band_posts.php  */

 

<meta charset="utf-8">
< ?
include_once('./_common.php');

/*
https://developers.band.us
네이버 밴드 개발자 사이트에서 내 서비스등록후, Aaccess Token 을 발급받는다.


밴드 목록에서 밴드키 찾기 부분, 밴드키를 찾은 후에는 해당 부분만 주석처리 한다.
*/


/************************************************************************************

$url = 'https://openapi.band.us/v2.1/bands';

$ch = curl_init();

$data = "access_token=네이버 밴드에서 발급받은 토큰키를 넣는다.";

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HEADER, 0); // 헤더 출력 여부
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 결과값을 받을것인지

$result=curl_exec($ch);

curl_close ($ch);

var_dump($result);

**************************************************************************************/

 

 

 


//밴드 게시글 가져오기

$url = 'https://openapi.band.us/v2/band/posts';

$ch = curl_init();

$data = "access_token=네이버 밴드에서 발급받은 토큰키를 넣는다.&band_key=위밴드키 찾기부분에서 얻은 밴드키를 넣는다.";

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HEADER, 0); // 헤더 출력 여부
curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 결과값을 받을것인지

$result=curl_exec($ch);

curl_close ($ch);


$jsonData = json_decode($result, true);

$bo_table = "test";

// 게시판 ID를 넣는다.


$write_table = $g5['write_prefix'] . $bo_table; // 게시판 테이블 전체이름

foreach ($jsonData['result_data']['items'] as $items) {

 //포스트글 중복체크
 $cnt = sql_fetch("select wr_id from $write_table where wr_1 = '".trim($items['post_key'])."' ");
 if( $cnt>0 || $items['content']=='Uploaded event.' ) {
  continue;
 } else {

  $wr_date_time = date('Y-m-d H:i:s',substr($items['created_at'],0,10));
  $wr_subject = "네이버 밴드글 (".substr($wr_date_time,0,10).")";
  // 제목은 적당하게 넣어 준다.

  $wr_content = substr(trim(nl2br($items['content'])),0,65536);
  $wr_content = preg_replace("#[\\\]+$#", "", $wr_content);

  $mb_id = "admin";
  $wr_name = "운영자";
  // 게시자 이름도 적당하게 넣어 준다.

  $wr_password = get_encrypt_string("1a2a3a4a5a6a");
  $wr_email = '';

  $wr_num = get_next_num($write_table);
  $wr_reply = '';
  $html = "html2";

  // 포스트 키
  $wr_1 = trim($items['post_key']); 

  $tmp_photo = "";
  foreach($items['photos'] as $photo){
   $tmp_photo .= '<img src="'.$photo['url'].'" alt="band images" ><br><br>';
  }

  $wr_content .= $tmp_photo;

  $sql = " insert into $write_table
   set wr_num = '$wr_num',
     wr_reply = '$wr_reply',
     wr_comment = 0,
     ca_name = '',
     wr_option = '$html,$secret,$mail',
     wr_subject = '$wr_subject',
     wr_content = '$wr_content',
     wr_link1 = '',
     wr_link2 = '',
     wr_link1_hit = 0,
     wr_link2_hit = 0,
     wr_hit = 0,
     wr_good = 0,
     wr_nogood = 0,
     mb_id = '{$mb_id}',
     wr_password = '$wr_password',
     wr_name = '$wr_name',
     wr_email = '$wr_email',
     wr_homepage = '',
     wr_datetime = '".$wr_date_time."',
     wr_last = '".$wr_date_time."',
     wr_ip = '{$_SERVER['REMOTE_ADDR']}',
     wr_1 = '$wr_1',
     wr_2 = '',
     wr_3 = '',
     wr_4 = '',
     wr_5 = '',
     wr_6 = '',
     wr_7 = '',
     wr_8 = '',
     wr_9 = '',
     wr_10 = '' ";
  
  sql_query($sql);

  $wr_id = sql_insert_id();

  // 부모 아이디에 UPDATE
  sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");

  // 새글 INSERT
  sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '{$member['mb_id']}' ) ");

  // 게시글 1 증가
  sql_query("update {$g5['board_table']} set bo_count_write = (select count(wr_id) from  $write_table where 1=1) where bo_table = '{$bo_table}'");
 }
}

?>

 

 

 

3. 밴드 게시물은 등록된 역순으로 가져오게 되므로,

게시판 관리자에서 정렬순서를 wr_datetime desc 로 변경해 준다.

 

4. 다음 작업할때 쓸려고 팁자료실에 남겨 본다. 끝.

 

5. 추가

=================

 

해당 경로에 파일 만들기

/*    /api/_common.php  */

 

<?php
include_once('../common.php');
?>

 

/*

이 파일이 없으면 오류가 나고 DB 연결이 안됨.

그누보드 기본내용이라서 생략하였으나, 추가함.

*/


List of Articles
번호 제목 날짜 조회 수
30 jQuery 요소(elements) 미디어 컨버팅 플러그인 file 2019.12.13 320
29 글 작성시 랜덤형 자동 댓글로 인사 멘트남기기 2019.12.13 323
28 iframe 금지된 사이트 iframe 으로 불러오기 2019.12.13 385
27 이미지에 워터마크 넣기 2019.12.13 389
26 style 수정시 서버에서 로딩되게 하기 2019.12.13 256
25 우측 퀵메뉴 2019.12.13 383
24 특정 게시판에서 이미지 파일만 업로드 허용하기 file 2019.12.09 367
23 쉽고 간편한 인쇄 팁 file 2019.04.29 743
22 그누보드5 검색최적화 방법입니다 file 2019.04.29 876
21 영카트5 DB 테이블별로 덤프하기 2019.04.29 864
20 게시판 기본 스킨 목록 페이지 살펴보기 1 - list.skin.php 2017.04.13 2960
19 게시판 기본 스킨 목록 페이지 살펴보기 2 - 상세 설명 2017.04.13 2321
18 게시판 기본 스킨 글쓰기 페이지 살펴보기 1 - write.skin.php 2017.04.13 2554
17 게시판 기본 스킨 글쓰기 페이지 살펴보기 2 - 상세 설명 2017.04.13 2923
16 게시판 기본 스킨 내용보기 페이지 살펴보기 2 - 상세 설명 2017.04.13 2528
15 여분필드를 활용한 게시판 스킨 제작 - 기본적인 사용 방법 2017.04.13 2892
14 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-1 file 2017.04.13 3475
13 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-2 file 2017.04.13 4264
12 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-3 file 2017.04.13 3276
11 게시판 글쓰기 페이지에 스마트 에디터 2개 이상 사용하기 2017.04.12 2780
Board Pagination Prev 1 2 3 4 Next
/ 4

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved