폼메일 발송시 받는 사람 메일 주소 형식 문제

폼메일 발송시 받는 사람 메일 주소 형식 문제

QA

폼메일 발송시 받는 사람 메일 주소 형식 문제

본문

게시판에서 폼메일 발송 시

일부 정상(?) 형식의 메일(aaa@ gmail.com, aaa@ naver.com 등)을
 가지고 있는 회원에게는 폼메일이 잘 발송됩니다.


그런데 받는 사람의 메일 주소 중

1) 아이디에 ' . '이 있을 경우 (ex. aaa.aaa@ gmail.com)

2) 메일주소 nate.com 경우 (ex. aaa@ nate.com)


위의 경우에 메일 발송이 되지 않습니다.

에러 내용은 다음과 같습니다.


1)번의 경우 "이메일이 올바르지 않습니다' 에러창 동반

    -> 폼메일페이지 소스 열어보면 받는 사람 주소가 빈칸

2)번의 경우 받는 사람 주소가 aaa@ nate.ch 로 되어있어 발송 안됨


 폼메일창 생성 때 메일 주소의 encrypt, decrypt 과정에서

오류가 나는 것 같은데 저만의 문제인지 알려진 문제인지 궁금합니다. ㅠㅠ


 가입 시 인증 메일 발송 기능의 경우에는 메일 형식과 상관없이 잘 발송됩니다...

 

※ 참고: 작성된 내용 중 예시 메일 주소 @ 뒤에 공백있는 이유는 본 게시판 출력을 위함.

이 질문에 댓글 쓰기 :

답변 4

정상적인 메일주소를 판단하는 정규식에서 걸러지는듯 한데.

 

 

게시판에서 바로 폼메일을 보낼 수 있었던가요? 따로 스킨을 사용하고 계시는건지;

 

/[0-9a-zA-Z_]+(\.[0-9a-zA-Z_]+)*@[0-9a-zA-Z_]+(\.[0-9a-zA-Z_]+)*/으로 되어있는지 확인하시기 바랍니다.

 

2번의 경우 메일주소 자체가 잘못되어서 아예 발송이 안되는 경우 같네요

- 일단 이것을 먼저 참고하시고, http://zzaps.tistory.com/24

 

/lib/common.lib.php

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

class str_encrypt
{
    var $salt;
    var $lenght;

    function __construct($salt='')
    {
        if(!$salt)
            //$this->salt = md5(preg_replace('/[^0-9A-Za-z]/', substr(G5_MYSQL_USER, -1), G5_MYSQL_PASSWORD));
            $this->salt = sha1(preg_replace('/[^0-9A-Za-z]/', substr(G5_MYSQL_USER, -1), G5_MYSQL_PASSWORD)); //이것으로 수정

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

제가 md5, sha1의 차이점은 잘 모르겠으나, 중요한 것은 암호화한 결과물의 자릿수에 영향을 받는 것 같습니다.

 

$this->salt = md5(preg_replace('/[^0-9A-Za-z]/', substr(G5_MYSQL_USER, -1), G5_MYSQL_PASSWORD), true); - 결과물 16자.

 

$this->salt = md5(preg_replace('/[^0-9A-Za-z]/', substr(G5_MYSQL_USER, -1), G5_MYSQL_PASSWORD), false);- 결과물 32자, 기본값

로 테스트 해보시면,

true 일때 올바로 해독 것이, false 일때 해독이 안되고,

true 일때 올바로 해독 안되는 것이, false 일때 해독이 되네요.

 

-- sha1 --> 결과물 40자, 기본값(false)

제가 테스트 한 것은 다됨.

 

※ 참고하시기 바랍니다.

 

 

 

그누보드5 게시판 자체는 폼메일을 제공하지 않네요;;;;;;

말씀하신대로 따로 스킨을 사용 중입니다;;;;;

 

정규식은 lib/common.lib.php 에 있는 부분 말씀하시는거죠?
답변 해 주신  부분: /[0-9a-zA-Z_]+(\.[0-9a-zA-Z_]+)*@[0-9a-zA-Z_]+(\.[0-9a-zA-Z_]+)*/

작성되어있는부분: /[0-9a-z_-]+@[a-z0-9._-]{4,}/i

 

답변 해주신 부분으로 수정해도 같은 문제인거보니 스킨 문제인거같습니다.

 

2번의 경우는 DB 보면 aaa@ nate.com 으로 잘 저장되어있는데 메일 발송시 소스 추적해서 확인해보면

받는 사람이 aaa@ nate.ch 로 변경되어있습니다.

 

일단 모든 부분 스킨 문제로 보여 스킨부터 확인해보겠습니다.

답변 감사드립니다.

 

 

 

 

고대영님!!능력자!!

해결되었어요!!!!!!!!!!! 완전 메일 잘 보내짐!!!!!!!!!

 

와...진짜 이것때문에 스킨에서 소스 눈빠지게 보고 이것저것바꿔봐도 해결안되었는데

common/lib.php 에서 md5 --> sha1 이것만 바꿔도 바로 해결되네요!!!!

 

아직 md5하고 sha1 차이 확실히 이해 못했는데 암튼 체증이 확 내려감!!넘넘 감사드려요

본 코드 수정이 그누보드5에 문제없다면 다음 업데이트 때 반영되었으면 좋겠네요~

채택은 이미 해서 또 채택이 안되네요 ㅠ

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

회원로그인

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