php if문 문의드립니다.

php if문 문의드립니다.

QA

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. 아래 코드는 잘 못 작성되었습니다.


if ($mb[mb_level] = 7) goto_url("/bbs/board.php?bo_table=".$board);

ㅇ = 하나면 할당입니다. == 두개나 === 세개로 사용하셔야 하겠지요.

ㅇ $board는 그누보드 전체적으로 사용하는 변수이기 때문에 혹시나 $board에 다른 값을 넣으셨다면 변수명을 달리하는게 좋습니다.

 

2. 대략적인 구성을 보니 레벨 7회원의 경우에는 회원아이디로 된 게시판이 있는 것 같은데요.

head.php 파일 상단에 아래와 같이 입력 하면 될 것 같습니다.


<?
if($member[mb_level] == 7 && $bo_table) { // 로그인한 회원의 레벨이 7이면서 게시판 페이지인 경우
	$자리수 = strlen($member[mb_id]); // 회원 아이디가 몇글자인가
	if(substr($bo_table, 0, $자리수) != $member['mb_id']) { // 게시판ID에서 회원ID만큼만으로 비교 abc회원 abc_123게시판=> abc로 비교
		alert('잘못 된 접근입니다', '/bbs/board.php?bo_table='.$member['mb_id']);
	}
}
?>

 

회원ID에 따라 문제가 있을 수 있는 방식이니 다른 방식을 취하는게 좋을 것 같긴 합니다.

예를 들어

ㅇ회원A의 ID : abc

ㅇ회원B의 ID : abc_1

요런식일 경우 문제가 되겠지요...


if($mb[mb_id]=="sir"){

goto_url("/bbs/board.php?bo_table=".$board);

}else{

echo "<script>alert('잘못된 접근입니다.');location.replace('원하는 이동페이지 경로');</script>";

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

회원로그인

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