며칠동안만 회원을 차단 시킬 방법이 없을까요?

며칠동안만 회원을 차단 시킬 방법이 없을까요?

QA

며칠동안만 회원을 차단 시킬 방법이 없을까요?

답변 5

본문

그누 초보라 날마다 질문만 하네요 ㅎㅎ


스팸이라면 관리자 화면에서 영구히 차단시키겠지만, 회원이 규칙을 어겼을 때 며칠동안만 차단을 주려고 합니다.

이걸 그누5에서 구현할 방법이 있나요?

이 질문에 댓글 쓰기 :

답변 5

exend/limit.user.php  를 만들어서 이렇게 넣어주세요.
차단할 회원의 여유필드 mb_1 에 차단할 날짜를 넣어주면 되구요,

<?
if ($bo_table && $member[mb_1]&&$member[mb_1]<date("Y-m-d")) {
  alert("회원님은 $member[mb_1] 까지 게시판 사용이 제한됩니다.");
}
?>

$bo_table &&  를 제거하면 로그아웃을 못하니.. 이렇게 하시면되겠군요.
if (!strstr($PHP_SELF,'/logout') && strlen(dirname($PHP_SELF))>3 && $member[mb_1]&&$member[mb_1]<date("Y-m-d")) {
  alert("회원님은 $member[mb_1] 까지 게시판 사용이 제한됩니다.",G5_URL);
}


테스트안하고 눈으로만 짠거라서 될지는 모르겠어요.^^
오~~~ 또치0115 최고!! 멋집니다.
logout 부분은 로그아웃 루틴이 변경될수 있으니까
goto_url('G5_BBS_URL/logout.php'); 로 하시면 깔끔할것같습니다. ^^

--> 이렇게 하면 문제가 되겠군요.^^
if (!strstr($PHP_SELF,"/logout.php'))  {
    goto_url('G5_BBS_URL/logout.php'); 
}

로 해야 하겠습니다. (로그아웃시에는 체크 안하게요.^^)

1. 규칙을 어긴 회원(차단할 회원)을 디비에 저장한다.
2. 차단할 날짜를 설정한다.(디비에 저장)
3. 홈피 시작시 차단된 회원인지 확인한다.
4. 차단일이 지났는지 확인한다.

등등...디비와 연동하여~구현하면 되겠지요??
로빈아빠님이 알려주신걸 토대로 만들어 봤습니다..
급하게 만들어 세련되진 않네요 ^^ (실력없음을 감추기위한 방어막인거 아시죠? ㅋㅋ)

extend/limit.user.php 에 다음 코드를 넣었습니다.

<?php
if ($member['mb_id'])
{
if($member[mb_1]!="")
{
if($member[mb_1]>=date("Y-m-d"))
{
// logout.php 소스를 가져와 자동으로 로그아웃 되게 만들었습니다. 

// 이호경님 제안 코드
session_unset(); // 모든 세션변수를 언레지스터 시켜줌 
session_destroy(); // 세션해제함 
// 자동로그인 해제 --------------------------------
set_cookie("ck_mb_id", "", 0);
set_cookie("ck_auto", "", 0);
// 자동로그인 해제 end --------------------------------

 alert("회원님은 $member[mb_1] 까지 게시판 사용이 제한됩니다.자동 로그아웃되었습니다.");
}
}
}

?>

선행될 내용으로는

관리자가 

관리자 페이지에서 (차단할)이용자정보의  mb_1 항목에 

수동으로 차단할 날짜를 

2014-1-14 이런형식으로 입력해주시고 

테스트하심되어요..

더 세련된 방법 아시는분~~고쳐주세요~~공부되게요 ^^

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 125,873
© SIRSOFT
현재 페이지 제일 처음으로