쪽지 전송시 받는사람에게 이메일 보내기~ > 그누보드5 팁자료실

그누보드5 팁자료실

쪽지 전송시 받는사람에게 이메일 보내기~ 정보

쪽지 전송시 받는사람에게 이메일 보내기~

본문

질문답변에 문의글이 있길래 팁으로 남겨봅니다~ (5.0b03 버전에서 테스트해봤습니다)

그누보드4 팁게에 곱슬최씨님게서 올린 팁을 보고 했습니다.
http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=12697

1. /bbs/memo_form_update.php 파일
include_once(G5_GCAPTCHA_PATH.'/gcaptcha.lib.php'); 이 부분 아래쪽에

include_once(G5_PATH.'/lib/mailer.lib.php'); // 이메일 라이브러리 추가

2. 19번째줄쯤에
$row = sql_fetch(" select mb_id, mb_nick, mb_open, mb_leave_date, mb_intercept_date from {$g5['member_table']} where mb_id = '{$recv_list[$i]}' ");
를 아래로 변경 (mb_email 추가)
$row = sql_fetch(" select mb_id, mb_nick, mb_email, mb_open, mb_leave_date, mb_intercept_date from {$g5['member_table']} where mb_id = '{$recv_list[$i]}' ");

3. 23번째줄쯤
$member_list['nick'][] = $row['mb_nick']; 이부분 아래쪽에
$member_list['email'][] = $row['mb_email']; // 추가

4. 63번째줄에 $recv_mb_nick = ~~ 부분 아래쪽에
$recv_mb_email = get_text($member_list['email'][$i]); // 추가


5. 마지막으로 73번째 insert_point 부분 아래쪽에 아래코드 추가

$send_subject = "쪽지가 도착했습니다."; // 메일 제목은 알아서 수정하세요~
$send_memo = $_POST['me_memo'];
//$send_memo = get_text($_POST['me_memo']); // 필요할 듯하면..

if ($recv_mb_email && $member['mb_email']) {
mailer($member['mb_name'], $member['mb_email'], $recv_mb_email, $send_subject, $send_memo, 1);
}


이상 허접팁이었습니다~

수정 : $send_memo = $_POST['me_memo']  뒤쪽에 ; 추가
추천
1

댓글 7개

공개해주셔서 대단히 감사드리고, 고맙습니다.
g5-5.0b23버전  /bbs/memo_form_update.php 파일은 아래코드입니다. 적용하려니 안되는데 아래코드를 어케 해야 할런지요
수고스럽지만 좀 부탁드려도 될런지요. 왕초보라...;;
<?php
include_once('./_common.php');
include_once(G5_CAPTCHA_PATH.'/captcha.lib.php');

if ($is_guest)
    alert('회원만 이용하실 수 있습니다.');

if (!chk_captcha()) {
    alert('자동등록방지 숫자가 틀렸습니다.');
}

$recv_list = explode(',', trim($_POST['me_recv_mb_id']));
$str_nick_list = '';
$msg = '';
$error_list  = array();
$member_list = array();
for ($i=0; $i<count($recv_list); $i++) {
    $row = sql_fetch(" select mb_id, mb_nick, mb_open, mb_leave_date, mb_intercept_date from {$g5['member_table']} where mb_id = '{$recv_list[$i]}' ");
    if ($row) {
        if ($is_admin || ($row['mb_open'] && (!$row['mb_leave_date'] || !$row['mb_intercept_date']))) {
            $member_list['id'][]  = $row['mb_id'];
            $member_list['nick'][] = $row['mb_nick'];
        } else {
            $error_list[]  = $recv_list[$i];
        }
    }
    /*
    // 관리자가 아니면서
    // 가입된 회원이 아니거나 정보공개를 하지 않았거나 탈퇴한 회원이거나 차단된 회원에게 쪽지를 보내는것은 에러
    if ((!$row['mb_id'] || !$row['mb_open'] || $row['mb_leave_date'] || $row['mb_intercept_date']) && !$is_admin) {
        $error_list[]  = $recv_list[$i];
    } else {
        $member_list['id'][]  = $row['mb_id'];
        $member_list['nick'][] = $row['mb_nick'];
    }
    */
}

$error_msg = implode(",", $error_list);

if ($error_msg && !$is_admin)
    alert("회원아이디 '{$error_msg}' 은(는) 존재(또는 정보공개)하지 않는 회원아이디 이거나 탈퇴, 접근차단된 회원아이디 입니다.\\n쪽지를 발송하지 않았습니다.");

if (!$is_admin) {
    if (count($member_list['id'])) {
        $point = (int)$config['cf_memo_send_point'] * count($member_list['id']);
        if ($point) {
            if ($member['mb_point'] - $point < 0) {
                alert('보유하신 포인트('.number_format($member['mb_point']).'점)가 모자라서 쪽지를 보낼 수 없습니다.');
            }
        }
    }
}

for ($i=0; $i<count($member_list['id']); $i++) {
    $tmp_row = sql_fetch(" select max(me_id) as max_me_id from {$g5['memo_table']} ");
    $me_id = $tmp_row['max_me_id'] + 1;

    $recv_mb_id  = $member_list['id'][$i];
    $recv_mb_nick = get_text($member_list['nick'][$i]);

    // 쪽지 INSERT
    $sql = " insert into {$g5['memo_table']} ( me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_memo ) values ( '$me_id', '$recv_mb_id', '{$member['mb_id']}', '".G5_TIME_YMDHIS."', '{$_POST['me_memo']}' ) ";
    sql_query($sql);

    // 실시간 쪽지 알림 기능
    $sql = " update {$g5['member_table']} set mb_memo_call = '{$member['mb_id']}' where mb_id = '$recv_mb_id' ";
    sql_query($sql);

    if (!$is_admin) {
        insert_point($member['mb_id'], (int)$config['cf_memo_send_point'] * (-1), $recv_mb_nick.'('.$recv_mb_id.')님께 쪽지 발송', '@memo', $recv_mb_id, $me_id);
    }
}

if ($member_list) {
    $str_nick_list = implode(',', $member_list['nick']);
    alert($str_nick_list." 님께 쪽지를 전달하였습니다.", G5_HTTP_BBS_URL."/memo.php?kind=send", false);
} else {
    alert("회원아이디 오류 같습니다.", G5_HTTP_BBS_URL."/memo_form.php", false);
}
?>
아래 코드로 한번 테스트해보세요~ 실테스트는 안해봤습니다.

<?php
include_once('./_common.php');
include_once(G5_CAPTCHA_PATH.'/captcha.lib.php');
include_once(G5_PATH.'/lib/mailer.lib.php'); // 이메일 라이브러리 추가

if ($is_guest) { alert('회원만 이용하실 수 있습니다.'); }
if (!chk_captcha()) { alert('자동등록방지 숫자가 틀렸습니다.'); }

$recv_list = explode(',', trim($_POST['me_recv_mb_id']));
$str_nick_list = '';
$msg = '';
$error_list  = array();
$member_list = array();
for ($i=0; $i<count($recv_list); $i++) {
    $row = sql_fetch(" select mb_id, mb_nick, mb_email, mb_open, mb_leave_date, mb_intercept_date from {$g5['member_table']} where mb_id = '{$recv_list[$i]}' ");
    if ($row) {
        if ($is_admin || ($row['mb_open'] && (!$row['mb_leave_date'] || !$row['mb_intercept_date']))) {
            $member_list['id'][]  = $row['mb_id'];
            $member_list['nick'][] = $row['mb_nick'];
            $member_list['email'][] = $row['mb_email'];
        } else {
            $error_list[]  = $recv_list[$i];
        }
    }
}

$error_msg = implode(",", $error_list);

if ($error_msg && !$is_admin)
    alert("회원아이디 '{$error_msg}' 은(는) 존재(또는 정보공개)하지 않는 회원아이디 이거나 탈퇴, 접근차단된 회원아이디 입니다.\\n쪽지를 발송하지 않았습니다.");

if (!$is_admin) {
    if (count($member_list['id'])) {
        $point = (int)$config['cf_memo_send_point'] * count($member_list['id']);
        if ($point) {
            if ($member['mb_point'] - $point < 0) {
                alert('보유하신 포인트('.number_format($member['mb_point']).'점)가 모자라서 쪽지를 보낼 수 없습니다.');
            }
        }
    }
}

for ($i=0; $i<count($member_list['id']); $i++) {
    $tmp_row = sql_fetch(" select max(me_id) as max_me_id from {$g5['memo_table']} ");
    $me_id = $tmp_row['max_me_id'] + 1;

    $recv_mb_id  = $member_list['id'][$i];
    $recv_mb_nick = get_text($member_list['nick'][$i]);
    $recv_mb_email = get_text($member_list['email'][$i]); // 추가

    // 쪽지 INSERT
    $sql = " insert into {$g5['memo_table']} ( me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_memo ) values ( '$me_id', '$recv_mb_id', '{$member['mb_id']}', '".G5_TIME_YMDHIS."', '{$_POST['me_memo']}' ) ";
    sql_query($sql);

    // 실시간 쪽지 알림 기능
    $sql = " update {$g5['member_table']} set mb_memo_call = '{$member['mb_id']}' where mb_id = '$recv_mb_id' ";
    sql_query($sql);

    if (!$is_admin) {
        insert_point($member['mb_id'], (int)$config['cf_memo_send_point'] * (-1), $recv_mb_nick.'('.$recv_mb_id.')님께 쪽지 발송', '@memo', $recv_mb_id, $me_id);
    }
   
    $send_subject = "쪽지가 도착했습니다."; // 메일 제목은 알아서 수정하세요~
    $send_memo = $_POST['me_memo']; // ; 추가
    //$send_memo = get_text($_POST['me_memo']); // 필요할 듯하면..
    if ($recv_mb_email && $member['mb_email']) {
    mailer($member['mb_name'], $member['mb_email'], $recv_mb_email, $send_subject, $send_memo, 1);
    }
}

if ($member_list) {
    $str_nick_list = implode(',', $member_list['nick']);
    alert($str_nick_list." 님께 쪽지를 전달하였습니다.", G5_HTTP_BBS_URL."/memo.php?kind=send", false);
} else {
    alert("회원아이디 오류 같습니다.", G5_HTTP_BBS_URL."/memo_form.php", false);
}
?>
$send_memo = $_POST['me_memo'] 뒤에 ; 이 빠졌네요~^^;;
$send_memo = $_POST['me_memo']; 로 바꿔보세요~ 해당 버전에 테스트 결과 잘되네요~
으 죄송한데요 메일에서 쪽지보기를 넣을려고 하는데 어케...죄송;;;;
<a href="http://주소.com>사이트 접속</a> 이것을 어디에 넣어야 하는지요
아님 다르게 해야 하는지요. 메일에서 바로 클릭해서 쪽지를 보게 하고자 합니다.
전체 2,429 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

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