방문자수 리셋 함수 코드리뷰 부탁해요

방문자수 리셋 함수 코드리뷰 부탁해요

QA

방문자수 리셋 함수 코드리뷰 부탁해요

본문

 

 
    function reset_g5_visit(){ 
        $sql = " TRUNCATE g5_visit_sum ";
        sql_query($sql);
        $sql = " TRUNCATE g5_visit ";
        sql_query($sql);
    }
    reset_g5_visit();
 
 

 

요 코드를 40일 마다 한번씩 실행할려고 하는데, 어떻게 해야 하나요?

이 질문에 댓글 쓰기 :

답변 2

코드를 조금 변경해드리죠


 
 
    function reset_g5_visit( $diffdate = 40){ 
        $chkrow = sql_fetch("SELECT if (DATEDIFF(CURDATE(), vi_date) > {$diffdate},1,0) chk FROM g5_visit order by vi_id  LIMIT 1");
        if ($chkrow['chk']) {

            $sql = " TRUNCATE g5_visit_sum ";
            sql_query($sql);
            $sql = " TRUNCATE g5_visit ";
            sql_query($sql);
        }
    }

    reset_g5_visit();   // 이건 extend 어디에 넣어도 무방합니다.
    // 40일이 아닌 일자를 기간을 변경하고 싶으면
   // reset_g5_visit(30);  //이런식으로 일자를 변경하면됩니다.
 
 

 

visit 관련테이블에 상태를 관리하지 않으려면
존재하는 데이타중 1개Row로 관리하는 방법입니다만
그게 아니라면

config테이블같은곳에 컬럼을 추가해서
그누보드 설정값체크하듯 truncate값이 실행되면 그 값의 일자를 변경하는겁니다.
그러면 위와 같이 visit를 체크하지 않아도 되지만
db의 테이블 컬럼값을 활용하는 측면에서는 동일합니다.
이미존재하는 환경값을 활용하면 약간의 개선은 있겠네요

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

회원로그인

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