메일발송시 나눠서 발송하는방법

메일발송시 나눠서 발송하는방법

QA

메일발송시 나눠서 발송하는방법

본문

메일을 1000건씩 끈어서 발송하려고하는데요 

선택된회원이 1만명일경우 어던식으로 돌려야하는지 고수님들부탁드립니다.

 

 

mail_select_update.php 에 적용해야될거같은데방법을모르겟네요 

 

<?php
$sub_menu = "200300";
$countgap = 5; // 몇건씩 보낼지 설정
$maxscreen = 500; // 몇건씩 화면에 보여줄건지?
$sleepsec = 300;  // 천분의 몇초간 쉴지 설정 
 
//                  중  략
 mailer($config['cf_admin_email_name'], $config['cf_admin_email'], $to_email, $subject, $content, 1);
 
        echo "<script> document.all.cont.innerHTML += '$cnt. $to_email ($mb_id : $name)<br>'; </script>\n";
        //echo "+";
        flush();
        ob_flush();
        ob_end_flush();
        usleep($sleepsec);
        if ($cnt % $countgap == 0)
        {
            echo "<script> document.all.cont.innerHTML += '<br>'; document.body.scrollTop += 1000; </script>\n";
        }
 
        // 화면을 지운다... 부하를 줄임
        if ($cnt % $maxscreen == 0)
            echo "<script> document.all.cont.innerHTML = ''; document.body.scrollTop += 1000; </script>\n";
    }
}
?>
 

이 질문에 댓글 쓰기 :

답변 4

<?php

$list = sql_query("select * from g5_mail_list where is_send = 'N' limit 1000 ");

for($i=0;$row=sql_fetch_array($list);$i++){

mail send;

sql_query("update g5_mail_list set is_send = 'Y' where mail_id = '{$row[mail_id]}' "); 

}

$no = sql_fetch("select count(*) cnt from g5_mail_list where is_send = 'N' ");

if($no[cnt]){

page_reload;; 

}else{

 end 

}

?>

 

이정도면 되나요??? 

발송 리스트를 db화 하신 담에

 

1000건 발송하고  

발송 페이지 리로드

 

미발송건 중1000건 발송하고  

발송페이지 리로드

 

미발송건 중1000건 발송하고  

발송페이지 리로드

..... 

 

저는 이렇게 처리합니다. ^^

 

더 좋은 방법 있으신 분 계신가요? 

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

회원로그인

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