여분필드 값 매일 00시 초기화

여분필드 값 매일 00시 초기화

QA

여분필드 값 매일 00시 초기화

본문

안녕하세요.

 

회원 여분 필드를 이용해서 하루 댓글 작성 가능 횟수를 제한하는것을 만들고 있습니다.

 

위 기능은 팁게, 질문게시판 찾아서 복사 붙여넣기로..; 어찌어찌 만들어봤는데

 

mb_1 값을 00시에 자동으로 초기화 하는 방법은 제 기술로는 되지가 않네요.

 

고수님들 도움 부탁드립니다. 

이 질문에 댓글 쓰기 :

답변 3

<방법 1>

1) mb_1 초기화 SQL 실행 파일 생성

 

2) 웹크론 사이트에서(구글 검색 '웹 크론'), 실행 주기 (매일 0시) 및 실행 URL 등록

 

하는 방법이 있습니다. 개인적으로 권장하지는 않습니다.

 

<방법 2>

* mb_1 에 댓글 수를 등록/업데이트 한다면..

=> mb_2 에 실행날짜를 기록/업데이트합니다. (ex. 2020-11-03)

(mb_1 : mb_2 날짜에 등록한 댓글 수, mb_2 : 마지막 댓글 수 기록/업데이트 날짜 정보)

 

* mb_1 댓글 수 등록/업데이트 코드 바로 전에 다음로직을 추가해줍니다.

: mb_2 에 날짜값이 있고, 오늘 날짜가 아니라면 => mb_1, mb_2 초기화


$today = date('Y-m-d');

if ($member['mb_2'] && $today > $member['mb_2']) {
  $sql = "
    update {$g5['member_table']}
       set mb_1 = '0',
           mb_2 = ''
     where mb_id = {$member['mb_id']}
  ";
  sql_query($sql);
}

// 기존 mb_1 업데이트 로직 
// 기존 mb_1 업데이트 sql 문에 mb_2 = '{$today}' 추가

감사합니다 마르스컴퍼니님

덕분에 해결했습니다.

근대 PHP 버전 문제인지.. 저는 만들어주신 쿼리문으로는 초기화가 안되서 아래처럼 했습니다.

감사합니다~

$sql = " update $g5[member_table] set mb_1 = '0', mb_2 = '' where mb_id = '$member[mb_id]' ";

서버 자체기능으로 정해진 시간마다 코드를 실행시키는 기능을 사용하셔야합니다

 

그게 아니라면 php자체만으론 실시간으로 반응하여 코드를 실행시키긴 힘듭니다

병원님 말씀처럼 작업을 해야 하고 크론탭이나 실시간이 힘드실 경우 따로 댓글 관련 테이블을 만드시고 거기다가 날짜 댓글수를 넣으셔서 거기서 체크를 하시면 될거 같습니다.

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

회원로그인

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