지메일이 안보내지는데 뭐가 문제일까요??

지메일이 안보내지는데 뭐가 문제일까요??

QA

지메일이 안보내지는데 뭐가 문제일까요??

본문

비밀번호 찾기 스킨을 다 뜯어 고쳤고 현재 이메일을 입력하고 확인을 누르면 임시비밀번호를 만들어 이메일로 전송하는 기능을 붙였습니다

임시비밀번호까지는 잘만들어졌는데 메일로 안보내져서요

mailer.lib.php는 지난번에 다른 분이 올려주셨던 지메일로 보내는 코드로 바꿨습니다

 

 


//mailer.lib.php
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가;
//gmail SMTP 설정
function Gmailer($to, $subject, $content, $type=1)
{
    global $config;
    global $g5;
    // 메일발송 사용을 하지 않는다면
    if (!$config['cf_email_use']) {
        return;
    }
    if ($type != 1) {
        $content = nl2br($content);
    }
    include_once(G5_PHPMAILER_PATH.'/PHPMailerAutoload.php');
    $mail = new PHPMailer(); // defaults to using php "mail()"
    if (defined('G5_SMTP') && G5_SMTP) {
        $mail->isSMTP();
        $mail->SMTPAuth = true;
        $mail->SMTPSecure = "ssl";
        $mail->Host = "smtp.gmail.com";
        $mail->Port = 465;
        $mail->Username = "메일"; //사용할 지메일 계정
        $mail->Password = "패스워드"; //구글계정 패스워드
    }
    $mail->CharSet = 'UTF-8';
    $mail->From = "메일"; //발송메일(=사용할 지메일 계정)
    $mail->FromName = "쇼핑몰이름";
    $mail->Subject = $subject;
    $mail->AltBody = ""; // optional, comment out and test
    $mail->msgHTML($content);
    $mail->addAddress($to);
    $mail->SMTPKeepAlive = true;
    return $mail->send();
}
?>

 


//html ajax
function canchangepass(){
    var mail = document.getElementById('findmyPass').value;
    $.ajax({
      type:"POST",
      url: "sendmymail_ajax.php",
      data:{
        method:"check",
        sendmymail:mail
      },
      success:function(data){
        var json = JSON.parse(data);        
        if(json["result"] == 200){
            var word = replaceAt(mail, 2, '****'); 
            alert(data);
            $('#ip_bsBoxid').show();
            $('#ip_mail_txt').append(word);
            $('#mg_t10_11').show();
            
            }
            
         
        
      },
      beforeSend:function(){
      },
      complete:function(){
      },
      error:function(e){
        alert("데이터 전송 지연이 발생합니다. 잠시후에 시도해주세요.");
        return;
      },
      timeout:5000
    })//ajax;
}
 

 


//sendmymail_ajax.php
<?php
include_once "../common.php";
include_once "G5_LIB_PATH.'/mailer.lib.php'";

?>
<?php
$conn = mysqli_connect("커넥션정보");
mysqli_query($conn, "set names utf8;");
$method = $_POST["method"];
$newpass = $_POST["newpass"];
$sendmymail = $_POST["sendmymail"];
$fname = "쇼핑몰이름";
$fmail = "쇼핑몰이메일";
$subject = "임시비밀번호입니다";

echo $tmp_passwd;
 
if($method == "check"){
    $ran_num = rand(100000, 999999);
    $tmp_passwd = get_encrypt_string($ran_num);
    $new_pw = get_encrypt_string($tmp_passwd);
    $subject = "임시비밀번호입니다";
    $sql = "UPDATE g5_member SET mb_password = '".$new_pw."' WHERE mb_email ='".$sendmymail."' ";
    $rst = mysqli_query($conn, $sql);
    //$sql = "SELECT * FROM g5_member WHERE mb_email ='".$newmypass_id."'";
    //$rst = mysqli_query($conn, $sql);
    //$row = mysqli_fetch_array($rst);
    //$mb_id = $row["mb_id"];
    //$mb_email = $row["mb_email"];
    
    $Gmailer = Gmailer($sendmymail,$subject,$tmp_passwd);
    echo json_encode(array("result" => 200, "tmp_passwd" => $tmp_passwd, "new_pw" => $new_pw, "sql" => $sql, "Gmailer" => $Gmailer));    
}
 
?>
 

 

 

ajax 통신까지는 성공이 되는데 alert으로 data를 찍어보면 gmailer:false라고 뜨네요ㅠㅠ어딜 손봐야할까요..ㅠ

지메일 smtp설정 때문인가 싶어 액세스 설정 변경에 메일설정-전달 및 POP/IMAP 을 사용설정으로 해도 안됩니다 ㅠ

이 질문에 댓글 쓰기 :

답변 1

스팸메일 보내는사람들이 많아서 그런거에요 화이트도메인인가 먼가 등록되야지 보낼수있을거에요

거의 처음에 하시면 스팸 메일함에 있어요

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

회원로그인

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