그누보드 2.62 카페형식(베타에 베타) > 그누3 팁자료실

그누3 팁자료실

그누보드 2.62 카페형식(베타에 베타) 정보

일반 그누보드 2.62 카페형식(베타에 베타)

본문

완전하지 않는 베타에 베타버젼입니다.
그냥 카페형식이 가능하게끔 그누보드 소스만 손보았다고 생각하시면되겠습니다.
카페형식의 사이트구성하시거나 하나의 DB계정에 같은보드를 2개설치할수 없을때
여려명이 게시판을 사용할려고 할때 그룹별로
완전불리 관리되기때문에 이때는 사용하는데 무난하리라고 생각됩니다.
그게 아니시라면 그냥 그누보드를 사용하시길 권장해드립니다.

테크닉니 없는 완전 단순무식방식의 카페형식구도입니다.
시간적여유가 없고 php지식이 부족해서 아는데까지 구현한것입니다.

현재까지 작업진척상황입니다.


1. 도메인과 카페구조 (1차도메인, 또는 2차도메인사용 모두를 기준으로함)

  예제)
  1.1 1차도메인 안에서의 디렉토리구조
       1.1.1 통합기본 http://www.test.com     (폴더위치:home/test/www/)
             실제적용홈  (http://www.game2da.com)          

       1.1.2 카페페이지 http://www.test.com/cafe/ccc   (폴더위치:home/test/www/cafe/ccc/)
            실제적용홈 (http://clan.game2da.com/cosmos)

  p.s: www.game2da.com는 현재 제가 운영하고있는 홈페이지입니다.
        wwww.game2da.com은 www.rgro.net에 호스팅되어있는 상태고 2차도메인이 지원되는형식에서
        적용한것입니다.
 
  1.2 2차도메인 안에서의 디렉토리구조

       1.1.1 통합기본   http://www.test.com                (폴더위치:HOME/test/www/)
       1.1.2 카페페이지 http://cafe.test.com/ccc/          (폴더위치:HOME/test/cafe/ccc/)

  (※ 디렉토리 구조는 소스 수정시 반경가능)

2. 디렉토리 구조

HOME-----test-+--www---------+----board-+-----manage
              |              |          |
              |              |          +-----data-+------file
              |              |          |        
              |              |          +-----skin-+------login
              |              |                     +------outlogin
              |              |                     +------newlist
              |              |                     +------user
              |              |                      
              |              +----main-+ main1.htm
              |              |         + main2.htm
              |              |         + main3.htm
              |              |         + main4.htm
              |              |         + main5.htm
              |              |
              |              + index.html
              |              + head.htm
              |              + foot.htm
              |
              +----cafe-+------ccc---+ index.html
                        |            + head.htm
                        |            + foot.htm
                        |
                        +------ggg---+ index.html
                        |            + head.htm
                        |            + foot.htm
                        +------tot---+ index.html
                        |            + head.htm
                        |            + foot.htm
                        +------카페명+ index.html
                        |        :


            
3. 노프레임구현 및 특이 사항
   1.1 기본그룹 페이지설정필요(tot를 기본그룹으로 잡음)
       기본그룹또한 카페(그룹)중하나 이기때문에 항상 기본 그룹은 만들어나야함

   1.2 노프레임과 프레임(아이프레임)사용
       1.1.1 노프레임
           - 노프레임의 경우는
             그룹관리자가 노프레임구현을 위해 상단첨부파일, 하단첨부파일을 설정하더라도 해당파일을 찾는 위치는
             해당그룹내 폴더(cafe/그룹/)에서 찾는게 아니라 해당게시판을 불러들인 그룹내 폴더에서 해당파일을 찾음
             예) ggg그룹 free게시판(상단첨부파일은 head.htm, 하단첨부파일은 foot.htm)
                 ccc그룹페이지에서 ggg그룹 free게시판을 연결하면 상단첨부,하단첨부파일을 ccc그룹폴더안에서 찾음
                 (cafe/ccc/ head.htm과 foot.htm이 적용됨)
                 head.htm과 foot.htm파일명의 모든 그룹 고정이 필요함 그렇치않는경우는 _head.php와 _tail.php상에서
                 파일이 존재하지 않을시 head.htm과 foot.htm를 include하도록 비교처리필요  
             ※ 해당 카페 페이지를 체크하기 위해서 $main변수를 사용하여 해당 상단첨부,하단첨부파일을 찾음
             ※ 이 노프레임 작업을 위해서 기본페이지에서 $main="ccc"식으로 변수선언이 필요하고 또한 보드 호출시에
                gnuboard.php?main=$main&gr_id=$gr_id&bo_table=게시판명씩으로 사용필요!


       1.1.2 프레임(아이프레임)사용
           - 보드를 읽어올시에 해당그룹변수만 추가해주면됨
             gnuboard.php?gr_id=그룹명&bo_table=게시판명
                  
   1.3 카페운영시 한카페에서 가장 많이 사용되는 free,qa,pic,등등 테이블 이름이 현재의 그누보드처럼 한개만 가능한경우
       다른 그룹에서 동일이름의 테이블을 생성못하여 테이블이름자원의 한계가 있음
       이걸 막기위해서 그룹별로 테이블이름을 생성토록하고 동일 그룹내 동일 테이블명 형성만 막아놓음
       이로인해 모든 쿼리와 게시판명령시 기존
       gnuboard.php?bo_table=테이블명 에서 gnuboard.php?gr_id=그룹명&bo_table=테이블 형식으로 모두변경
       gb_board테이블상 현재 bo_table이 기본인덱스로 되어있어서 동일이름생성이 불가능함으로 일반인덱스에 인덱스를
       bo_table, gr_id로 변경처리함

4. 그룹(카페)회원가입
  현재는 해당 그룹(카페)에서 회원가입을 하게 되면 회원가입과 동시에 그룹(카페)회원에 동시가입됨
  
  ※ 회원가입과 별도로 그냥 그룹회원가입 모듈필요

5. 그룹관리자 권한
  현재는 해당 최고관리자가 그룹관리자에 대해서 해당그룹에 대한 게시판 글삭제,수정,이동,복사권한 설정가능

  ※ 그룹별 게시물 생성제한필요(필드만 만들어놓은 상태)
  ※ 그룹회원에 대한 정보수정권한삭제
     그룹멤버테이블에서 별로의 카페가입여부, 멤버 레벨, 직책권한테이블 생성등 관리 해당모듈개발필요
  ※ 전체적으로 그룹관리자 권한및 관리자모드 전환필요

6. 테이블 추가된 테이블구도
  1.1 gb_grou_member테이블
      1.1.1 gr_yn       카페가입,신청,카페회원을 확인위한 테이블
      1.1.2 gr_level    카페레벨
      1.1.3 gr_class    카페직책

  1.2 gb_group
      1.1.1 gr_list_del  그룹관리자 글삭제권한여부
      1.1.2 gr_list_edit 그룹관리자 글수정권한여부
      1.1.3 gr_list_copy 그룹관리자 글복사,이동권한여부

  1.3 gb_board
      bo_tale의 기본인덱스에서 일반인덱스로 변경
      gr_id 일반인덱스에 추가
  
  1.4 테이블생성구조변경

      gb_write_테이블명 에서 gb_write_그룹명_테이블명 으로 변경됨
      예) gb_write_free 에서 gb_write_ccc_free으로 변경됨


5.31 일 패치
구조변경
home-+--test-+------www-+-----board-+-----manage
                  |                  |
                  |                  + index.html
                  |                  + home.htm
                  |                  + head.htm
                  |                  + foot.htm
                  +-----cafe---+-A카페--+ index.html  (메인그룹)
                  |                  |            + home.htm
                  |                  |            + head.htm
                  |                  |            + foot.htm
                  |                  |            +------head--+ A카페_head.htm
                  |                  |                                  + A카페_foot.htm
                  |                  |                                  + B카페_head.htm
                  |                  |                                  + B카페_foot.htm
                  |                  +-B카페--+ home.htm
                  |                  |            + home.htm
                  |                  |            + head.htm
                  |                  |            + foot.htm
                  |                  |            +------head--+ A카페_head.htm
                  |                  |                                  + A카페_foot.htm
                  |                  |                                  + B카페_head.htm
                  |                  |                                  + B카페_foot.htm

2. 현재까지 버그 수정
 1.1 gblayer상의 이름찾기 버그 수정
 1.2 게시판과, 일반페이지 상태에서의 로그인문제 버그 수정
 1.3 관리자모드의 분류부분 버그 수정
 1.4 글삭제 버그수정
 1.5 관리자모드 그룹관리부분 버그 수정

6.2일 수정작업
1.1 회원별, 그룹별 레벨별도 테이블구성 완료
    현재 회원테이블하나에 회원 레벨이 있음으로써
    A그룹에서 회원 레벨을 수정하면 B그룹에도 같이 적용됨으로써 문제 발생
  각 그룹별로 회원테이블을 따로 지정하여 그룹관리자가 그룹레벨을 설정할수
  있음

6.4일 수정작업
1. 수정작업
  1.1 그룹,관리자모드에서 게시판삭제이 버그 수정

7.26일 2.62버젼으로 변경작업완료

현재 진행중인 작업
각메뉴에 대해서 길드관리자가 페이지 추가 및 수정가능
9월달쯤되면 마무리될 듯 싶습니다.
다른부분에서 수정보는게 너무 많아서....거의 손을 못대다가 다시 열성적으로 손대기 시작했습니다.
추천
0

댓글 전체

$file=@fopen("./config/setup.php","w");
@fwrite($file,"<?
\$path_url=\"$path_url\";
\$sss=\"default\";
\$_path=\"$_path\";
?>");
@fclose($file);
@mkdir("./xxx_data",0777);
@mkdir("./xxx_data/view",0777);
@mkdir("./xxx_data/item",0777);
@mkdir("./xxx_data/head",0777);
@mkdir("./xxx_data/jobs",0777);
@mkdir("./xxxdata/normal",0777);

copy("./xxx/install/ddd.php","./_config/ddd.php");
copy("./xxx/install/sss.php","./_config/sss.php");
copy("./xxx/install/guest.php","./_config/guest.php");
copy("./xxx/install/layer.php","./_config/layer.php");
copy("./xxx/install/xxx.php","./_config/sxxx.php")
모두가...
아직도 가야할 길이 한참 남아있는 그누보드자체의  불완전한 소스코딩에 대한 최적화와  디버깅을 위한 해결에 좀더 매진하여야 하지 않을까하는 생각입네다~

수고하시고 열심히 하세요~
발상의 전환이 필요하다고 보입니다. 굳이 보드명이 필요한 것인지.. 이건 페이지를 하나하나 만들어간다면 모르지만, 까페를 만든다든지 한다면- 보드명은 숫자로 충분하지요. 그게 아니면 까페를 갖는 그룹명에 의해서 보드명은 자동으로 만들어지도록 해야죠. 까페이름이 ab면 ab_bbs 이런식으로요..
비판과 비평
하지만 남의 의지를꺽는 비판은 신중히 생각하셔서 ..
언어란 전달될 때 받는 입장에서 의지를 상실할 수 도 있어요.
용기와 격려가 필요할때인데..

힘내세요.. ccc 님.
제목을..."그누보드 2.42 를 이용한 카페형식 커뮤니티"라 하심이...
웬지....혼돈스런 느낌이 -_-;
..........꼭...새 그누보드가 나온듯한 느낌.....

그리고 딴지같습니다만,
이건 관리자모드에서 새로운 커뮤니티를 생성하는 형식이 아니라
똑같은 폴더의 구조를 복사해서 경로와 내용만 좀 수정하고
새폴더를 생성해서 붙여넣는거 밖에 별다른 방법이 없는거 같은데....아닌가요...??

그렇다면...
그룹관리자 생성하는거야 현재로써는 그누보드에서 지원하는거고
그룹별 아이디도 기존에 생성되고 있고....

폴더만 새로 만들어서 붙이는거 말고는....뭐가 특별한건지.......

관리자모드에서 새로운커뮤니티의 폴더및 구조전체를 생성해 내는 방법이면 좋을텐데...
전체 1,026
그누3 팁자료실 내용 검색

회원로그인

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