혹시 이팁에서 기간이 지나면 자동해제되게 할 수 없나요 ? 정보
혹시 이팁에서 기간이 지나면 자동해제되게 할 수 없나요 ?본문
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=3893&sca=&sfl=mb_id%2C1&stx=izen
이 팁이 마음에 들어서 .. 사용해 볼려고 하는데 ..
문제는 기간을 정하면 수동으로 또 일일이 그날 되서 변경을 해줘야 하는 약간의 불편함이
있습니다.
즉 기간을 정하고 그 날짜가 지나면 자동으로 해제 되게 하는 방법은 없나요 ? ^^;;
이 팁이 마음에 들어서 .. 사용해 볼려고 하는데 ..
문제는 기간을 정하면 수동으로 또 일일이 그날 되서 변경을 해줘야 하는 약간의 불편함이
있습니다.
즉 기간을 정하고 그 날짜가 지나면 자동으로 해제 되게 하는 방법은 없나요 ? ^^;;
댓글 전체

최대한 스킨을 수정하지 않고 한다면 (원작자의 의도도 있으니 ^^)
코드가 중복되기는 하지만 대충 아래와 같이 하시면 되겠네요. ^^
스킨에서 추가된 부분만 함수로 만드셔도 될듯하구요. ^^
아래처럼 하면 일단 제한/해제에 상관없이 일자로만 체크를 하니까
일자만 제대로 세팅되어 있다면 궂이 제한/해제 부부은 바꾸어 주지
않아도 되겠네요 ^^
생각나는데로 적어서 혹여 버그 또는 더 좋은 방법이 있을수도 있겠습니다.
(리펙토링무시 ^^)
./bbs/write.php 9 라인에 추가
===============================================================================
$nDateTime = mktime(0,0,0,date("m"),date("d"),date("Y")); //오늘일자
$sDateTime = strtotime($member[mb_limit_s]); //시작일자
$eDateTime = strtotime($member[mb_limit_e]); //종료일자
//오늘일자가 기간내이면 제한값(2) 무조건 세팅
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
if ($member[mb_limit] == '2'){
alert("$member[mb_nick]님은 $member[mb_limit_s] 부터 $member[mb_limit_e]까지 사이트 이용이 제한되어 있습니다.");
}
===============================================================================
./bbs/view_comment_update.php 7 라인에 추가
===============================================================================
$nDateTime = mktime(0,0,0,date("m"),date("d"),date("Y")); //오늘일자
$sDateTime = strtotime($member[mb_limit_s]); //시작일자
$eDateTime = strtotime($member[mb_limit_e]); //종료일자
//오늘일자가 기간내이면 제한값(2) 무조건 세팅
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
if ($member[mb_limit] == '2'){
alert("$member[mb_nick]님은 $member[mb_limit_s] 부터 $member[mb_limit_e]까지 사이트 이용이 제한되어 있습니다.");
}
===============================================================================
코드가 중복되기는 하지만 대충 아래와 같이 하시면 되겠네요. ^^
스킨에서 추가된 부분만 함수로 만드셔도 될듯하구요. ^^
아래처럼 하면 일단 제한/해제에 상관없이 일자로만 체크를 하니까
일자만 제대로 세팅되어 있다면 궂이 제한/해제 부부은 바꾸어 주지
않아도 되겠네요 ^^
생각나는데로 적어서 혹여 버그 또는 더 좋은 방법이 있을수도 있겠습니다.
(리펙토링무시 ^^)
./bbs/write.php 9 라인에 추가
===============================================================================
$nDateTime = mktime(0,0,0,date("m"),date("d"),date("Y")); //오늘일자
$sDateTime = strtotime($member[mb_limit_s]); //시작일자
$eDateTime = strtotime($member[mb_limit_e]); //종료일자
//오늘일자가 기간내이면 제한값(2) 무조건 세팅
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
if ($member[mb_limit] == '2'){
alert("$member[mb_nick]님은 $member[mb_limit_s] 부터 $member[mb_limit_e]까지 사이트 이용이 제한되어 있습니다.");
}
===============================================================================
./bbs/view_comment_update.php 7 라인에 추가
===============================================================================
$nDateTime = mktime(0,0,0,date("m"),date("d"),date("Y")); //오늘일자
$sDateTime = strtotime($member[mb_limit_s]); //시작일자
$eDateTime = strtotime($member[mb_limit_e]); //종료일자
//오늘일자가 기간내이면 제한값(2) 무조건 세팅
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
if ($member[mb_limit] == '2'){
alert("$member[mb_nick]님은 $member[mb_limit_s] 부터 $member[mb_limit_e]까지 사이트 이용이 제한되어 있습니다.");
}
===============================================================================
답변 감사 드립니다 ^^ 근데 알려 주신 사항으로 확인을 해보니 ..
기간이 만료가 되었어도 그대로 나타나는군요 ^^;;
변화가 없네요 기존것이랑 .. ^^
기간이 만료가 되었어도 그대로 나타나는군요 ^^;;
변화가 없네요 기존것이랑 .. ^^

그래요? ^^
지금 테스트 해보니 저는 기간에 맞게 제한/해제 잘되는데요? ^^
혹여 $nDateTime, $sDateTime, $eDateTime 3개의 값이 잘 나오는지 한번 찍어보세요 ^^
지금 테스트 해보니 저는 기간에 맞게 제한/해제 잘되는데요? ^^
혹여 $nDateTime, $sDateTime, $eDateTime 3개의 값이 잘 나오는지 한번 찍어보세요 ^^
답변 감사 합니다.
음 제가 해보니 안되던데요 ^^
값을 찍으면 잘 나옵니다. 즉 그냥 <?=$member[mb_limit_s]?>만 찍어도 날짜가 ..
잘 나옵니다. 관리자에서도
제한 해제는 잘 됩니다. 제가 관리자 모드에서도 제한 걸어 보고 해보고 ..
다시 해제 걸어 보고 해보면 해제 걸어 놓으면 잘 됩니다.
즉 관리자에서 해제 걸어 놓으면 날짜가 남았음에도 메세지가 출력이 안되고 ..
제한 걸어 놓으면 메세지가 뜨구요 ^^
근데 위와 같이 알려 주신 소스로 넣어 놓고 해제를 하지 않았을때 마찬가지로 ..
제한 메세지가 뜨던데요 ^^;;
$nDateTime = mktime(0,0,0,date("m"),date("d"),date("Y")); //오늘일자
$sDateTime = strtotime($member[mb_limit_s]); //시작일자
$eDateTime = strtotime($member[mb_limit_e]); //종료일자
//오늘일자가 기간내이면 제한값(2) 무조건 세팅
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
if ($member[mb_limit] == '2'){
alert("$member[mb_nick]님은 $member[mb_limit_s] 부터 $member[mb_limit_e]까지 사이트 이용이 제한되어 있습니다.");
}
이렇게 상단에 넣어 보니 제재 기간이 분명 어제 날짜로 수정을 하고 .. 해제를 하지 않고 제재로
두웠을때 똑같은 메세지가 뜨더라구여 ^^
근데 보아 하니깐 제재 기간이 지났음에도 .. 만약 제재로 해놓으면 . 메세지가 출력이 되던데 ..
알려주신게 날짜 체크 인거 같은데 맞으신가요 ?
원리자 제재 날짜부터 ~ 제재 날짜까지 검사를 하는건아요 ?
근데 안되더라구요 ^^
음 제가 해보니 안되던데요 ^^
값을 찍으면 잘 나옵니다. 즉 그냥 <?=$member[mb_limit_s]?>만 찍어도 날짜가 ..
잘 나옵니다. 관리자에서도
제한 해제는 잘 됩니다. 제가 관리자 모드에서도 제한 걸어 보고 해보고 ..
다시 해제 걸어 보고 해보면 해제 걸어 놓으면 잘 됩니다.
즉 관리자에서 해제 걸어 놓으면 날짜가 남았음에도 메세지가 출력이 안되고 ..
제한 걸어 놓으면 메세지가 뜨구요 ^^
근데 위와 같이 알려 주신 소스로 넣어 놓고 해제를 하지 않았을때 마찬가지로 ..
제한 메세지가 뜨던데요 ^^;;
$nDateTime = mktime(0,0,0,date("m"),date("d"),date("Y")); //오늘일자
$sDateTime = strtotime($member[mb_limit_s]); //시작일자
$eDateTime = strtotime($member[mb_limit_e]); //종료일자
//오늘일자가 기간내이면 제한값(2) 무조건 세팅
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
if ($member[mb_limit] == '2'){
alert("$member[mb_nick]님은 $member[mb_limit_s] 부터 $member[mb_limit_e]까지 사이트 이용이 제한되어 있습니다.");
}
이렇게 상단에 넣어 보니 제재 기간이 분명 어제 날짜로 수정을 하고 .. 해제를 하지 않고 제재로
두웠을때 똑같은 메세지가 뜨더라구여 ^^
근데 보아 하니깐 제재 기간이 지났음에도 .. 만약 제재로 해놓으면 . 메세지가 출력이 되던데 ..
알려주신게 날짜 체크 인거 같은데 맞으신가요 ?
원리자 제재 날짜부터 ~ 제재 날짜까지 검사를 하는건아요 ?
근데 안되더라구요 ^^

if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
이부분 아래에다가 else $member[mb_limit] = '1'; 를 넣어보세요 ^^
그러면 아래와 같이 되겠죠? ^^
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
else $member[mb_limit] = '1';
기간일때만 제한 아닐때는 무조건 해제가 되겠죠 ^^
그러면 세티된 제한/해제값에 상관없이 기간에만 적용 받을수 있을겁니다.
글을 보니 뭘 원하시는지 명확히 알게 되었네요 ^^
이부분 아래에다가 else $member[mb_limit] = '1'; 를 넣어보세요 ^^
그러면 아래와 같이 되겠죠? ^^
if ($nDateTime >= $sDateTime && $nDateTime <= $eDateTime) $member[mb_limit] = '2';
else $member[mb_limit] = '1';
기간일때만 제한 아닐때는 무조건 해제가 되겠죠 ^^
그러면 세티된 제한/해제값에 상관없이 기간에만 적용 받을수 있을겁니다.
글을 보니 뭘 원하시는지 명확히 알게 되었네요 ^^
댓글 도움잘 되었읍니다.