고수님들 쿼리문 맞는지 확인 좀 부탁드립니다.ㅠㅠ

고수님들 쿼리문 맞는지 확인 좀 부탁드립니다.ㅠㅠ

QA

고수님들 쿼리문 맞는지 확인 좀 부탁드립니다.ㅠㅠ

본문

sql_query("DELETE g5_member.*,g5_point.* FROM g5_member INNER JOIN g5_point ON (g5_point.mb_id=g5_member.mb_id) where g5_member.mb_datetime < '".date("Y-m-d", G5_SERVER_TIME - 691200 )."' and g5_member.mb_email_certify = '0000-00-00'");

 

가입한지 8일 이전 회원중에서 메일 인증 안한사람들을 삭제하는 쿼리인데..

전에는 잘됐던거 같은데 지금은 뭐가 문제인지.. 쿼리가 넘어가기는 하는데..

해당 회원들 삭제가 안되네요 ㅠㅠ; 

이 질문에 댓글 쓰기 :

답변 3

쿼리문 자체는 별 문제가 없어 보입니다.

다만 직접 삭제하는 쿼리를 실행할 경우, 정확히 어떤 데이터가 없거나 또는 문제가 되어 원하는 결과가 도출되지 않는지 알 수 없는 상황이기 때문에, 단계별로 진행하여 문제상황을 확인하며 진행하는 것이 좋을 것같습니다.

 

예를 들면 아래와 같이 해보는 걸로요...


$result = sql_query(" select mb_id from {$g5['member_table']} where mb_datetime < '".date("Y-m-d", G5_SERVER_TIME - 691200 )."' and mb_email_certify = '0000-00-00 00:00:00' ");
if($result){
    while($row = sql_fetch_array($result)){
        //echo '메일인증 안한회원 : '.$row['mb_id'].'<br>'; //먼저 해당 아이디가 출력되는지 확인하고 아래의 쿼리를 실행하세요.
        member_delete($row['mb_id']); //포인트, 스크랩 등 해당 회원관련 내용도 함께 삭제하기 위함. 
    }
}
 

현재 소스 부분이 어느 페이지에 포함되어 있는지는 모르겠지만 현재 위의 소스가 들어간 페이지에서

common.php 파일은 인클루드 하셨는지 확인해 보세요.

G5_SERVER_TIME 상수를 사용하기 위해서는 common.php 파일을 인클루드 해야 하니까요. 

그냥 위 소스만 쓰려고 하는 상태이고, common.php 인클루드 해둔 상태입니다~
희안한게 전에는 잘먹혔던거 같은데..

G5_SERVER_TIME 상수를 그냥 직접 원하는 시간으로 바꾸고 해도 안먹혀서 문제입니다 ㅠㅠ

DELETE g5_member.*,g5_point.* FROM g5_member INNER JOIN g5_point ON (g5_point.mb_id=g5_member.mb_id) where g5_member.mb_datetime < '2016-09-25 00:00:00' and g5_member.mb_email_certify = '0000-00-00 00:00:00'

예를 들자면 위와 같이 직접 기재를 해서 PHPMYADMIN에서 적용해도 먹히기는 하는데
하나도 지워지는 테이블이 없네요...

이게 전에는 됐었던거 같은데 갑자기 안되서 이상하네요.ㅠㅠ

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

회원로그인

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