카페24 대량메일 DB연동 리턴값 동일?

카페24 대량메일 DB연동 리턴값 동일?

QA

카페24 대량메일 DB연동 리턴값 동일?

본문


if ($_POST['key'] == "인증코드") {
    $conn = mysql_connect(디비 접속 정보);
    mysql_select_db(디비명, $conn);
 
    if ($_POST['testmode'] == 1) {
        $result = mysql_query("select count(*) as cnt from 회원테이블"); // 연동 테스트용 , 받는 사람 총 수 쿼리 (실제 발송용 쿼리와 조건절을 같게 작성해주세요)
 
        if ($result) {
            $data = mysql_fetch_array($result, MYSQL_ASSOC); echo $data['cnt'];
        }
    } else {
        $result = mysql_query("select 이름, 이메일, 핸드폰, 기타1, 기타.... from 회원테이블"); // 실제 발송용 쿼리
        if ($result) {
            while (
                $row = mysql_fetch_array($result, MYSQL_ASSOC)) {
                    echo $row["이름"].",".$row["이메일"].",".$row['핸드폰'].",".$row['기타1']...기타(최대 10개)"; // 출력 순서는 이름, 이메일, 핸드폰, 기타 순으로 하셔야 합니다. echo "\n";
            }
        }
        mysql_free_result($result);
    }
mysql_close($conn);
} else {
    exit;
}

 

카페24에서 대량메일 DB연동시 제공되는 php예제

--------------------------------------------------------------------------------------------------

예제를 가져와 수정한 코드

 


<?php
include_once('./_common.php');
if ($_POST['key'] == "실제인증코드")  //인증코드
{
        $sql_common = " from {$g5['member_table']}";
        $sql_where = " where(1) ";
 
        // 메일수신동의한 회원만 가져옴
        $sql_where .= " and mb_mailling = '1' ";
 
        // 탈퇴, 차단한 회원은 제외
        $sql_where .= " and mb_leave_date = '' and mb_intercept_date = '' ";

    if ($_POST['testmode'] == 1) {
        $sql = " select count(*) as cnt, mb_id, mb_name, mb_email {$sql_common} {$sql_where}";
        $result = sql_query($sql);
        // 연동 테스트용, 받는 사람 총수 쿼리. 실제 발송용과 같은 조건으로 작성해주세요
        if ($result)
        {
            $data = sql_fetch_array($result);
            echo $data['cnt'];
        }
    } else  {
        $sql = " select count(*) as cnt, mb_id, mb_name, mb_email {$sql_common} {$sql_where}";
        $result = sql_query($sql);
        // 실제 발송용 쿼리  , 핸드폰, 기타1, 기타....
        if ($result)
        {
        while ($row = sql_fetch_array($result)) {
            echo  $row['mb_name'].",".$row['mb_email'].",,".$row['mb_id']; //,".$row['핸드폰'].",".$row['기타1']...기타(최대 10개);
            // 출력 순서는 이름, 이메일, 핸드폰, 기타 순으로 하셔야  합니다.
            //사용하실 회원정보의 필드명을 각각 입력해주시면 됩니다. 이름, 이메일은 필수정보입니다.
            echo "\n";
            }
        }
        sql_free_result($result);
    }
    //mysql_close($conn);
} else {
    exit;
}
?>

 

 

 

그런데 메일을 보내려고 db연동된 인원 수를 불러오면 제대로 잘 불러와 지는데

 

정작 발송하고나서 전송결과를 보면 발송하기 전에 불러온 인원수와 차이가 납니다...;;

 

발송하기전에 불러온 인원은 제대로 잘 나오는 상태였고, 정작 발송되는 인원은 전체회원이었습니다.

 

그래서 문의를 남겨보니 testmode 0, 1 의 리턴값을 같게 하라는 답변을 받고

 

위에 처럼 $sql = " select count(*)~~~~ 이 부분을 같게 하고 발송해보니... 저거도 안됩니다..ㅠㅠㅠ

 

혹시 리턴 값을 같게 하려면 어떻게 맞춰줘야 하나요..??ㅠㅠㅠ

 

개발자가 아닌데 해보려고 하니 잘 안되네요ㅠㅠㅠ

이 질문에 댓글 쓰기 :

답변 1

        if ($result)
        {
            $data = sql_fetch_array($result);
            echo $data['cnt'];
        }

이 부분도 동일하게 넣어보세요..

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

회원로그인

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