지금 엄청 급합니다.....비밀글 관련 사항입니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

지금 엄청 급합니다.....비밀글 관련 사항입니다. 정보

지금 엄청 급합니다.....비밀글 관련 사항입니다.

본문

아...지금 조금 당황스럽습니다..
 
홈페이지에 관리자가 여러명있는데, 관리자 권한을 밑에 분께서 말씀하신대로 수정을 하였습니다.
 
근데 이게 비밀글은 읽어지는데, 최고 관리자가 아니면 답글을 달수가 없더군요.
 
회원 레벨 9 이상이면 코멘트 삭제 가능하게 하기.
bbs/delete_all.php 26라인
수정 전
    if ($is_admin == "super") // 최고관리자 통과
        ;
 
수정 후
    if ($is_admin == "super") // 최고관리자 통과
        ;
    else if ($member[mb_id] && $member[mb_level] >= '9') // 회원레벨이 9이상이면 통과
        ;
 
 
bbs/delete.php 8라인
수정 전
if ($is_admin == "super") // 최고관리자 통과
    ;
 
수정 후
if ($is_admin == "super") // 최고관리자 통과
    ;
else if ($member[mb_id] && $member[mb_level] >= '9') // 회원레벨9 통과
    ;
 
 
bbs/write.php 246라인
수정 전
    if (!$is_admin) {
        if (!($member[mb_id] && $member[mb_id] == $write[mb_id]))
            if (sql_password($wr_password) != $write[wr_password])
                alert("패스워드가 틀립니다.");
    }
 
수정 후
    if (!$is_admin && $member[mb_level] < '9') {
        if (!($member[mb_id] && $member[mb_id] == $write[mb_id]))
            if (sql_password($wr_password) != $write[wr_password])
                alert("패스워드가 틀립니다.");
    }
 
 
bbs/view.php 68라인
수정 전
if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin) {
    $update_href = "./write.php?w=u&bo_table=$bo_table&wr_id=$wr_id&page=$page" . $qstr;
    $delete_href = "javascript:del('./delete.php?bo_table=$bo_table&wr_id=$wr_id&page=$page".$qstr."');";
}
 
수정 후
if (($member[mb_id] && ($member[mb_id] == $write[mb_id])) || $is_admin || $member[mb_id] && $member[mb_level] >= '9') {
    $update_href = "./write.php?w=u&bo_table=$bo_table&wr_id=$wr_id&page=$page" . $qstr;
    $delete_href = "javascript:del('./delete.php?bo_table=$bo_table&wr_id=$wr_id&page=$page".$qstr."');";
}
 
 
bbs/list.php 47라인
수정 전
// 관리자라면 CheckBox 보임
$is_checkbox = false;
if ($member[mb_id] && ($is_admin == "super" || $group[gr_admin] == $member[mb_id] || $board[bo_admin] == $member[mb_id]))
    $is_checkbox = true;
 
수정 후
// 관리자라면 CheckBox 보임
$is_checkbox = false;
if ($member[mb_id] && ($is_admin == "super" || $group[gr_admin] == $member[mb_id] || $board[bo_admin] == $member[mb_id] || $member[mb_level] >= '9'))
    $is_checkbox = true;
 
저번에 다른 회원님께서 알려 주신 팁도 적용해 보았는데, 마찬가지 입니다..
 
여러명의 관리자를 레벨9로 만들었는데, 비밀글에 답글이 써지지 않습니다.
 
지금 상당히 급합니다...아시는 고수님들 답변 좀 부탁 드리겠습니다..(__)
  • 복사

댓글 전체

> else if ($member[mb_id] && $member[mb_level] >= '9') // 회원레벨이 9이상이면 통과

위를 설명하면 (자기글이고 레벨이 9이상) 그러니깐 자신이 9레벨 이상이어야 작업가능

자기자신 또는 9레벨로 하실려면 && 를 or 나 || 로 변경하세요.
답변 감사합니다...

문제는 관리자가 비밀글을 읽는데는 아무 문제가 없습니다.

하지만 회원이 비밀글로 쓴 글에 답변을 달수가 없습니다.

"비밀글에는 자신 또는 관리자만 답변이 가능합니다." 라고만 나옵니다. 코멘트는 가능한데,

답변글을 달수가 없습니다....지금 환장하기 일보 직전입니다....
아~ 모르솔라준회원님이 시군요.....

혹시 비밀글을 최고 관리자말고 관리자가 답글을 다는 방법이 없을까요?

지금 찾고 있는데, /bbs/write.php 안에 88번째줄 쯤에

    // 비밀글인지를 검사
    if (strstr($write[wr_option], "secret")) {
        if ($write[mb_id]) {
            // 회원의 경우는 해당 글쓴 회원 및 관리자
            if (!($write[mb_id] == $member[mb_id] || $is_admin && $member[mb_level] < '8'))
                alert("비밀글에는 자신 또는 관리자만 답변이 가능합니다.");
        } else {
            // 비회원의 경우는 비밀글에 답변이 불가함
            if (!$is_admin && $member[mb_level] < '8')
                alert("비회원의 비밀글에는 답변이 불가합니다.");

여기 인것 같은데..적용이 잘 안됩니다.....ㅠ,ㅠ
// 비밀글인지를 검사
    if (strstr($write[wr_option], "secret")) {
        if ($write[mb_id]) {
            // 회원의 경우는 해당 글쓴 회원 및 관리자
            if (!($write[mb_id] == $member[mb_id] || $is_admin || $member[mb_level] < '8'))
                alert("비밀글에는 자신 또는 관리자만 답변이 가능합니다.");
        } else {
            // 비회원의 경우는 비밀글에 답변이 불가함
            if (!$is_admin || $member[mb_level] < '8')
                alert("비회원의 비밀글에는 답변이 불가합니다.");


또는

    // 비밀글인지를 검사
    if (strstr($write[wr_option], "secret")) {
        if ($write[mb_id]) {
            // 회원의 경우는 해당 글쓴 회원 및 관리자
            if (!($write[mb_id] == $member[mb_id] || $is_admin or $member[mb_level] < '8'))
                alert("비밀글에는 자신 또는 관리자만 답변이 가능합니다.");
        } else {
            // 비회원의 경우는 비밀글에 답변이 불가함
            if (!$is_admin or $member[mb_level] < '8')
                alert("비회원의 비밀글에는 답변이 불가합니다.");



이렇게 해보세요...^^
if (!($write[mb_id] == $member[mb_id] || $is_admin && $member[mb_level] < '8'))


여기서
if (!($write[mb_id] == $member[mb_id] || $is_admin && $member[mb_level] > '8'))

이게 아닙니까?
재경 아버님, 소중한 답변 감사합니다...

답변대로 고쳐 봤는데도, 문제가 해결이 안되네요...ㅠ.ㅠ

다른 관리자 권한을 10로 만들어도 최고 관리자만 비밀글에 답변글을 달수가 있네요..
// 비밀글인지를 검사
    if (strstr($write[wr_option], "secret")) {
        if ($write[mb_id]) {
            // 회원의 경우는 해당 글쓴 회원 및 관리자
            if (!($write[mb_id] == $member[mb_id] || $member[mb_level] > 8))
                alert("비밀글에는 자신 또는 관리자만 답변이 가능합니다.");
        } else {
            // 비회원의 경우는 비밀글에 답변이 불가함
            if (!$is_admin)
                alert("비회원의 비밀글에는 답변이 불가합니다.");
        }
    }


자세히 보지도 않고 답변을 해서 죄송합니다. 이렇게 해보면 안될까요?
ㅜ.ㅜ 감사합니다....

정말 감사합니다....정말 감사 하다는 말씀외에 드릴 말씀이 없습니다.

나이 서른 넘어서 뭔가를 시작한다는것이 힘들었는데, zb5부터 지금 그누까지 정말 좋은신 분들이 많은것 같습니다.

PhotoFly님, 모르솔라준회원님, root님 재경아버님, 모두 감사 드립니다.

저도 실력 쌓아서 이렇게 귀중한 답변 회원님께 드릴수 있도록 노력 하겠습니다.

감사합니다..(--)(__)(--)
© SIRSOFT
현재 페이지 제일 처음으로