인덱스에서 로그인한 자신의 게시판만 최신글에 출력하기

인덱스에서 로그인한 자신의 게시판만 최신글에 출력하기

QA

인덱스에서 로그인한 자신의 게시판만 최신글에 출력하기

본문

폐쇄형 사이트에서 접속시 로그인화면 먼저 보이게 하였습니다.

로그인 후에는 인덱스페이지에 자신이 게시판 관리자로 된 게시판만 최신글로 출력이 되도록 하려면 어떡해야 할까요. 최고관리자는 모든 게시판을 볼수 있고요?

 

좀 애매한 질문이 될까봐 조심스럽습니다.

이 질문에 댓글 쓰기 :

답변 2

외부에 있어 구체적인 소스를 직접 만들어 드릴 수 없어 안타깝습니다.

1. function을 하나 만들고, 현재 로그인한 회원의 아이디($mb_id)를 보내 관리자인지 여부를 구합니다.
2. 관리자라면 모든 과정이 패스되므로, 쿼리(query)에서 별다른 조건문을 걸지 않습니다.
3. 반면, 일반 회원이라면 g5_board 테이블에서 bo_admin(게시판 관리자)를 조건으로 쿼리를 보냅니다.
4. 쿼리를 보내면, 현재 로그인한 회원이 게시판 관리자인 bo_table을 추출할 수 있습니다.
5. 이 bo_table를 토대로 게시판을 로드하면 될 것으로 보입니다.

게시판 관리 설정에 보면 게시판 관리자 설정 필드가 bo_admin 일겁니다. 이것을 활용하면 될 것 같네요.

 

배포판 index.php 파일을 보면

 

<!-- 최신글 시작 { -->

    <?php
    //  최신글
    $sql = " select bo_table
                from `{$g5['board_table']}` a left join `{$g5['group_table']}` b on (a.gr_id=b.gr_id)
                where a.bo_device <> 'mobile' and bo_admin = `{$member['mb_id']}` ";
    if(!$is_admin)
        $sql .= " and a.bo_use_cert = '' ";
    $sql .= " and a.bo_table not in ('notice', 'gallery') ";     //공지사항과 갤러리 게시판은 제외
    $sql .= " order by b.gr_order, a.bo_order ";
    $result = sql_query($sql);
    for ($i=0; $row=sql_fetch_array($result); $i++) {
        if ($i%2==1) $lt_style = "margin-left:2%";
        else $lt_style = "";
    ?>

 

위에서 굵은 빨간색 부분만 추가하면 반영이 될 것 같네요.

최고관리자는 $is_admin=='super'로 인식하여 위 식을 조건문으로 처리하면 될 것 같습니다.

 

 

 

 

 

답변을 작성하시기 전에 로그인 해주세요.
전체 24
QA 내용 검색

회원로그인

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