php if문 문의드립니다. 채택완료
php if문 문의 드립니다.
/bbs/group.php?gr_id=wooju
/bbs/board.php?bo_table=wooju
/bbs/board.php?bo_table=wooju_abc
위와 같이 sir 그룹안에 3개의 게시판이 있습니다.
if문을 이용하여, "sir" 아이디가 로그인하면 /bbs/board.php?bo_table=wooju
바로 이 게시판으로 이동시키도록 하였는데요.
if ($mb[mb_level] = 7) goto_url("/bbs/board.php?bo_table=".$board);
여기서,
"sir"아이디로 로그인한 후 /bbs/board.php?bo_table=wooju 이 페이지를 벗어날 경우
경고창이 뜨게 하려고 합니다.
------------하려는 방식------------
"wooju" 아이디로 로그인한 상태,
if 페이지 로딩 시 맴버 아이디가 "wooju" 가 아닐 경우
"잘못된 접근입니다"경고창 띄우고, 확인 클릭하면 다시 로그인 한 아이디에 맞게
/bbs/board.php?bo_table=wooju 게시판으로 이동시킬려고 합니다.
단, /bbs/board.php?bo_table=wooju_abc 와 같이 맴버 아이디_abc 와 같이
보드명에 아이디가 속해 있으면, 현재페이지를 그대로 유지해야합니다.
설명이 제대로 된건지 모르겠습니다.
if 문을 head.php 파일에 넣으면 될것 같은데. 조건이 많으니 초보라서 어떻게 해야할지
모르겠네요. 조언 부탁드립니다.
감사합니다.
답변 2개
1. 아래 코드는 잘 못 작성되었습니다.
</p><p>if ($mb[mb_level] = 7) goto_url("/bbs/board.php?bo_table=".$board);</p><p>
ㅇ = 하나면 할당입니다. == 두개나 === 세개로 사용하셔야 하겠지요.
ㅇ $board는 그누보드 전체적으로 사용하는 변수이기 때문에 혹시나 $board에 다른 값을 넣으셨다면 변수명을 달리하는게 좋습니다.
2. 대략적인 구성을 보니 레벨 7회원의 경우에는 회원아이디로 된 게시판이 있는 것 같은데요.
head.php 파일 상단에 아래와 같이 입력 하면 될 것 같습니다.
</p><p><?</p><p>if($member[mb_level] == 7 && $bo_table) { // 로그인한 회원의 레벨이 7이면서 게시판 페이지인 경우</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>$자리수 = strlen($member[mb_id]); // 회원 아이디가 몇글자인가</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>if(substr($bo_table, 0, $자리수) != $member['mb_id']) { // 게시판ID에서 회원ID만큼만으로 비교 abc회원 abc_123게시판=> abc로 비교</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>alert('잘못 된 접근입니다', '/bbs/board.php?bo_table='.$member['mb_id']);</p><p><span class="Apple-tab-span" style="white-space:pre"> </span>}</p><p>}</p><p>?></p><p>
회원ID에 따라 문제가 있을 수 있는 방식이니 다른 방식을 취하는게 좋을 것 같긴 합니다.
예를 들어
ㅇ회원A의 ID : abc
ㅇ회원B의 ID : abc_1
요런식일 경우 문제가 되겠지요...
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인