채택완료

관리자 수정 시 잠금 해제

2023-04-18 (화) 02:10:04 1,655
Copy
$ss_name = "ss_secret_{$bo_table}_$view[wr_num]";
    if (get_session($ss_name))
    {
        set_session($ss_name, FALSE);
    }

위 코드를 'view.tail.skin' 파일에 만들어서 뷰페이지 이동 시 무조건 비밀번호 입력하도록 해두었는데요.(무조건 비밀글)

그런데 관리자가 수정만 하면 수정한 글만 비밀번호를 입력하지 않아도 뷰페이지로 이동해 버리네요.

다시 비로그인 계정으로 수정하면 비밀번호 입력해야 되도록 변경이 되구요.

모두 수정 시 비밀번호는 입력하지 안아서 비밀번호는 바뀌지 않은 상태인데...

관리자가 수정만 하면 잠금이 해제 되어 버리네요.

|

답변 2개

채택된 답변
+20 포인트

/bbs/board.php 파일에서 자신의 글과 관리자는 체크 안하도록 되어 있습니다.

이 부분을 삭제해야 모두 비번을 물어봅니다.

Copy
// 자신의 글이거나 관리자라면 통과

    if (($write['mb_id'] && $write['mb_id'] === $member['mb_id']) || $is_admin) {

        ;

    } else {

        // 비밀글이라면

        if (strstr($write['wr_option'], "secret"))

        {

            // 회원이 비밀글을 올리고 관리자가 답변글을 올렸을 경우

            // 회원이 관리자가 올린 답변글을 바로 볼 수 없던 오류를 수정

            $is_owner = false;

            if ($write['wr_reply'] && $member['mb_id'])

            {

                $sql = " select mb_id from {$write_table}

                            where wr_num = '{$write['wr_num']}'

                            and wr_reply = ''

                            and wr_is_comment = 0 ";

                $row = sql_fetch($sql);

                if ($row['mb_id'] === $member['mb_id'])

                    $is_owner = true;

            }

 

            $ss_name = 'ss_secret_'.$bo_table.'_'.$write['wr_num'];

 

            if (!$is_owner)

            {

                //$ss_name = "ss_secret_{$bo_table}_{$wr_id}";

                // 한번 읽은 게시물의 번호는 세션에 저장되어 있고 같은 게시물을 읽을 경우는 다시 비밀번호를 묻지 않습니다.

                // 이 게시물이 저장된 게시물이 아니면서 관리자가 아니라면

                //if ("$bo_table|$write['wr_num']" != get_session("ss_secret"))

                if (!get_session($ss_name))

                    goto_url(G5_BBS_URL.'/password.php?w=s&bo_table='.$bo_table.'&wr_id='.$wr_id.$qstr);

            }

 

            set_session($ss_name, TRUE);

        }

    }
2023-04-18 (화) 06:33:54

위 코드를 'view.tail.skin' 파일에 만들어서 뷰페이지 이동 시 무조건 비밀번호 입력하도록 해두었는데요.(무조건 비밀글)

===

어떻게 하신 것인지 소스를 올려 보세요.

write.skin.php

내용도 올려 보세요

답변을 작성하려면 로그인이 필요합니다.