테스트 사이트 - 개발 중인 베타 버전입니다

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

이제는난 9년 전 조회 3,588

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개

채택된 답변
+20 포인트

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

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

 

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

</p><p>$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'].'
'; //먼저 해당 아이디가 출력되는지 확인하고 아래의 쿼리를 실행하세요.
        member_delete($row['mb_id']); //포인트, 스크랩 등 해당 회원관련 내용도 함께 삭제하기 위함. 
    }
}</p><p>
 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

DELETE g5_member.*,g5_point.* FROM g5_member INNER JOIN g5_point ON (g5_point.mb_id=g5_member.mb_id) 

 

위의앞쪽 구문중 뭔가가 잘못된거 같은데..

뭐가 잘못됐는지 잘모르겠습니다... 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

p
9년 전

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

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

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

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

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

G5_SERVER_TIME 상수를 그냥 직접 원하는 시간으로 바꾸고 해도 안먹혀서 문제입니다 ㅠㅠ
이제는난
9년 전
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에서 적용해도 먹히기는 하는데
하나도 지워지는 테이블이 없네요...

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

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인