작성일 : 15-07-01 22:39
|
[GNU] 그누보드 변수
|
|
|
글쓴이 :
조형래
 조회 : 5,362
|
$config
: 그누보드의 기본설정 정보(g4_config 테이블의 내용)가 들어 있는 변수 입니다.
$member
: 회원의 정보가 들어 있는 변수로 common.php에서 읽어들입니다.
비회원의 경우 $member[mb_id]에 값이 없으며, $member[mb_level] = 1로 설정 됩니다.
관련된 변수로
$is_member : 회원일때 true
$is_guest : 비회원일때 true
$is_admin : 관리자 super, 그룹관리자 group, 게시판관리자 board, 일반회원 '' (값이 없슴)
$board
: 게시판의 정보가 들어 있는 변수로 bo_table에 값이 있으면 common.php에서 읽어들입니다.
$group
: 게시판 그룹의 정보가 들어 있는 변수로 $gr_id에 값이 있으면 common.php에서 읽어들입니다.
$write
: $bo_table, $wr_id에 값이 있을 때 common.php에서 해당 게시물의 정보를 읽습니다. 특정 게시물의 보기/쓰기 등의 스킨에서, db에서 읽어온 값을 필요할 때 쓰면 됩니다.
$write = sql_fetch(" select * from $write_table where wr_id = '$wr_id' ");
view.skin.php에서 사용이 가능한 변수
$view
: common.lib.php의 get_view 함수를 통해 정리된 정보를 가지고 옵니다.
$view에는 출력을 위해 수정된 정보가 $write에는 db 그대로의 정보가 있습니다.
db의 field명이 아닌 변수에 대해서 추가로 궁금한 사항은 /bbs/view.php를 보세요.
$view[subject] : 제목
$view[wr_option] : 옵션정보
$view[content] : 내용
view_commnet.skin.php에서 사용이 가능한 변수
$list[$i]
: 게시글의 기본 정보는 $write, 변형된 정보는 $view에 들어가지만, 코멘트의 정보는 $list[$i][subject] ($i 번째의 코멘트, subject 값) 이런식으로 값을 저장하게 됩니다. db의 field명이 아닌 변수에 대해서 추가로 궁금한 사항은 /bbs/view_comment.php를 보세요.
$list[$i][name] : 이름
$list[$i][content] : 내용 (conv_content, search_font 로 변형된 내용)
$list[$i][content1] : 내용 (db에서 가져온 원본 그대로의 내용)
$list[$i][datetime] : 날짜
$list[$i][ip] : ip
write.skin.php에서 사용이 가능한 변수
db의 field명이 아닌 변수에 대해서 추가로 궁금한 사항은 /bbs/write.php를 보세요.
$w : 글쓰기 모드를 지정. '' 처음쓰기, 'u' 수정하기, 'r' 답변하기
$subject : 제목
$content : 내용
board.php, write.php를 부를때 사용하는 값
그누보드를 사용할때 주소창을 보면 아래처럼 page, sca, sfl 등의 값이 넘어갑니다.
이 값들을 넘겨줌으로써 그누보드는 기본적인 정보를 전달하게 되는 것 입니다.
이렇게 넘겨진 값은 스킨에서 $를 앞에 붙여서 쓰면 됩니다. 예:$bo_table, $wr_id
http://opencode.co.kr/bbs/write.php?w=u&bo_table=g4_books&wr_id=2&page=0&sca=&sfl=&stx=&sst=&sod=&spt=0&page=0
bo_table : 게시판 테이블 id
wr_id : 게시글 id
page : 게시글 페이지 번호
w : write.php에서 사용 '' (빈값. 새글) u (수정) r (답글)
sca : 카테고리
sfl : search field (검색 필드)
stx : search text (검색어)
sst : search sort (검색 정렬 필드)
sod : search order (검색 오름, 내림차순)
sop : search operator (검색 or, and 오퍼레이터)
spt : search part (검색 파트[구간])
그누보드의 테이블 정의를 보면 g4_member 테이블이 회원정보를 가지고 있습니다.
이것을 그누보드에서 부르기 위해서는 $g4[member_table] 변수를 사용하면 되고,
테이블에 대한 정의는 모두 config.php에서 되어 있습니다.
회원 정보를 가져오는 간단한 예제는 다음과 같습니다.
별도로 코딩을 하기 귀챦으니, 게시판 list.skin.php 같은 곳에 살짝 삽입해서 해보면 됩니다.
$sql = " select * from $g4[member_table] where mb_id = '$member[mb_id]' ";
echo $sql;
$mb = sql_fetch($sql);
print_r($mb);
이것을 해석하면 $sql 변수에 mysql 명령어를 넣어줍니다.
그 명령어는 $g4[member_table](그누보드 회원 테이블)로 부터,
mb_id(그누보드의 회원 id) 값이 $member[mb_id](현재 로그인한 회원의 mb_id) 인 값을 모두 가져와라는 겁니다.
$sql 변수에 값을 넣으면 " select * from g4_member where mb_id = 'test' " 이런게 들어 있습니다.
궁금하죠?
그래서 echo $sql 이라는 것으로 화면에 출력을 해봅니다.
다음으로 $sql의 mysql 명령어를 수행해서 그 값을 가져와서 $mb 변수에 넣어주는게 필요합니다.
native mysql 명령어 (원래 mysql/php에서 제공하는 것)을 쓰면 머리가 아프기 때문에,
그누보드의 sql_fetch (mysql 명령을 실행하고, 그 결과를 가져와라) 함수를 쓰면 됩니다.
뭘 가져 왔는지 확인해야겠죠?
print_r($mb) 와 같이하면, 배열에 들어 있는 값을 모두 출력해 줍니다.
쉽지만 php와 그누보드, mysql의 기본을 배울 수 있는 부분 입니다.
이것을 자주 쓰기 때문에 기본 함수로 만들어 뒀습니다.
아주 쉽습니다.
$mb = get_member($member[mb_id]);
|
|