XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.
조회 수 61 댓글 2

관리자 메일을 네이버의 웍스모바일로 바꾸었더니 회원탈퇴시 관리자에게 통보되는 메일이 소스 그래도 보여지네요.

 

아무래도 네이버웍스에서는 수신되는 메일이 text 메일로 인식되는거 같은데요.

 

 

회원가입확장모듈에서 관리자에게 통보할때 html 메일이라고 알려줄 수 있나요?

 

 

회원가입,탈퇴시 관리자에게 통보하게 될때 사용하는 소스입니다.

 

<h1>{getNotEncodedSiteUrl()}</h1>
<table style="font-size: 9pt; border: 1px solid #ccc; border-collapse: collapse; text-align: center;">
<tr style="background: #eee;">
    <th style="border: 1px solid #ccc; padding: 5px;" rowspan="2">{$lang->no}</th>
    <th style="border: 1px solid #ccc; padding: 5px;" rowspan="2">{$lang->notify_type}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->regdate}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->user_id}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->user_name}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->nick_name}</th>
</tr>
<tr style="background: #eee;">
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->email_address}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->homepage}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->blog}</th>
    <th style="border: 1px solid #ccc; padding: 5px;">{$lang->birthday}</th>
</tr>
<!--@foreach($member_infos as $no => $val)-->
<tr>
    <td style="border: 1px solid #ccc; padding: 5px;" rowspan="2">{$no}</td>
    <td style="border: 1px solid #ccc; padding: 5px;" rowspan="2">{$val->mode}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{zdate($val->regdate)}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{$val->member_info->user_id}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{$val->member_info->user_name}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{$val->member_info->nick_name}</td>
</tr>
<tr>
    <td style="border: 1px solid #ccc; padding: 5px;">{$val->member_info->email_address}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{$val->member_info->homepage}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{$val->member_info->blog}</td>
    <td style="border: 1px solid #ccc; padding: 5px;">{zdate($val->member_info->birthday, "Y-m-d")}</td>
</tr>
<!--@end-->
</table>

 

 

관리자인 제가 볼때 위 소스 그래도 보여져서 읽기가 힘드네요. 기존에 관리자메일을 지메일로 사용할때는 알아서 html을 보기 좋게 보여줘서 불편이  없었습니다.

 

 

 

 

 

 

관리자메일로 통보해주는 소스 일부는 아래와 같습니다.

 

  /**
         * @brief 관리자 통보 준비
         **/
        function procNotifyAdmin($mode, $member_info) {
            $oJoinExtendModel = &getModel('join_extend');
            $config = $oJoinExtendModel->getConfig();
            
            // 실행 조건 검사
            if ($mode == 'signin' && !($config->use_notify_admin == 'signin' || $config->use_notify_admin == 'both'))    return;
            if ($mode == 'signout' && !($config->use_notify_admin == 'signout' || $config->use_notify_admin == 'both'))    return;

            // 통보 주기가 있을 경우 정보를 DB에 추가
            if ($config->notify_admin_period == 'collect') {
                $args->mode = $mode;
                $args->member_info = serialize($member_info);
                
                // DB추가(오류는 무시)
                executeQuery('join_extend.insertNotify', $args);
                
                // 통보 개수
                $output = executeQuery('join_extend.getCountNotify');
                $count = $output->data->count;
                
                // 통보할 개수가 되었으면 통보
                if (intVal($count) >= intVal($config->notify_admin_collect_number))
                    $this->procSendNotifyAdmin('DB');
                    
                return;
            }

            // 매번 통보이면 바로 통보
            $this->procSendNotifyAdmin('member_info', $member_info, $mode);
        }
        
        /**
         * @brief 관리자 통보
         **/
        function procSendNotifyAdmin($mode, $member_info = null, $type = 'signin') {
            $oJoinExtendModel = &getModel('join_extend');
            $config = $oJoinExtendModel->getConfig();
            
            // DB 정보를 이용
            if ($mode == 'DB') {
                // 통보할 정보를 가져온다
                $output = executeQueryArray('join_extend.getNotify');
                $member_infos = $output->data;
                
                // member_info 일렬화를 해제
                if (count($member_infos))
                    for ($i = 0; $i < count($member_infos); $i++)   $member_infos[$i]->member_info = unserialize($member_infos[$i]->member_info);
            
                // DB를 비운다
                executeQuery('join_extend.emptyNotify');
                
            // member_info를 이용
            }else if ($mode == 'member_info' && $member_info) {
                $member_infos[0]->member_info = $member_info;
                $member_infos[0]->mode = $type;
                $member_infos[0]->regdate = date("YmdHis");
            }

            // 통보할 내용이 있는지 확인
            if (!count($member_infos))  return;
            
            // 템플릿을 컴파일하여 내용을 생성
            Context::set('member_infos', $member_infos);
            $oTemplate = &TemplateHandler::getInstance();
            $tpl = $oTemplate->compile('./modules/join_extend/tpl/', 'notify_email');

            // 관리자 정보
            $oMemberModel = &getModel('member');
            $admin_info = $oMemberModel->getMemberInfoByUserID($config->admin_id);
            $admin_member_srl = $admin_info->member_srl;

            // 설정에 따라 쪽지나 메일을 발송
            if ($config->notify_admin_method == 'message' || $config->notify_admin_method == 'both') {
                $title = Context::getLang('notify_title');
                $content = $tpl;
                $oCommunicationController = &getController('communication');
                $oCommunicationController->sendMessage($admin_member_srl, $admin_member_srl, $title, $content, false);
            }
            
            if ($config->notify_admin_method == 'email' || $config->notify_admin_method == 'both') {
                $title = Context::getLang('notify_title');
                $content = $tpl;
                $oMail = new Mail();
                $oMail->setTitle($title);
                $oMail->setContent($content);
                $oMail->setContentType('plain');
                $oMail->setSender($admin_info->user_name, $admin_info->email_address);
                $oMail->setReceiptor($admin_info->user_name, $admin_info->email_address);
                $oMail->send();
            }
        }

  • profile
    YJSoft 2016.10.17 19:27:23
    $oMail->setContentType('plain');

    $oMail->setContentType('html');
    로 변경해주셔야 합니다.
  • profile
    웹지기 2016.10.17 19:28:18
    감사합니다.

List of Articles
번호 분류 제목 날짜
공지 질문/답변 답변을 확실히 받기위한 질문자 지침서 20 2015.12.31
3045 질문/답변 업로드시에 rewrite 할 수 있을까요..? 3 2016.10.18
3044 질문/답변 samba 사용할 때 업로드만 허용하고...삭제는 못하게 할 수 있을까요? 2 2016.10.18
3043 질문/답변 파일 대기큐로 쌓인 파일들 한방에 지우는 방법 6 file 2016.10.18
3042 질문/답변 정말 탐나는 SNS 공유버튼 14 file 2016.10.18
» 질문/답변 회원가입 확장모듈에서 관리자에게 통보 메일 html로 2 2016.10.17
3040 질문/답변 PHP 소스를 직접 수정하는 일이 없는 경우 opcache 설정 문의 2 2016.10.17
3039 질문/답변 rss pubdate 날짜형식 변경... 1 2016.10.17
3038 질문/답변 메타태그 이거 어디 어느파일에 넣어야하나요? 2 2016.10.17
3037 질문/답변 permission denied, 첨부파일 100% 사라짐 문제 질문드립니다. 9 2016.10.17
3036 질문/답변 게시판 스킨에서 댓글 페이지네이션의 변수값을 조정할 수 있나요? 3 file 2016.10.16
3035 질문/답변 댓글 수정, 삭제 클릭시 2 file 2016.10.16
3034 질문/답변 가사 에드온 관련 질문 7 2016.10.16
3033 질문/답변 혹시 자체 메일서버 구축해서 웹 메일까지 쓰시는 분 있나요? 8 2016.10.16
3032 질문/답변 게시물 목록 XML Query 보충 좀 부탁드립니다. 굽신.. 5 2016.10.15
3031 질문/답변 mailgun 서비스에서 저희 도메인으로 발송되게 ? 5 2016.10.15
3030 질문/답변 마켓플레이스 meta name="description"이 나타나지 않는 문제 8 2016.10.15
3029 질문/답변 메뉴 팝업 or 팝업 관련 질문 4 2016.10.15
3028 질문/답변 네이버 웹문서 미노출 질문 10 2016.10.15
3027 질문/답변 사이트 메뉴 클릭하면 팝업 가능하게 되나요? 2 2016.10.15
3026 질문/답변 스케치북 게시판 목록 글자 크기 와 폰트를 바꾸고 싶어요 5 2016.10.15
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 ... 170 Next
/ 170
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...