메인화면에서 신청폼 작성시 메일발송

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
메인화면에서 신청폼 작성시 메일발송

QA

메인화면에서 신청폼 작성시 메일발송

본문

안녕하세요 메인화면에서 신청폼을 작성하면 엑셀로관리할수있는 게시판으로 글이 들어가고 메일로 신청이들어왔다는 내역을 받을수있도록 기능을 구현하고 있습니다.

메일셋팅은 다 해놨고 게시판에서 글을 쓰면 메일이 정상적으로 날라오고 메인화면에있는 신청폼이 등록이 되면 게시판에 글이 저장되는것까진 확인이 되었는데 신청폼으로 작성한 게시글은 메일이 날라가지 않습니다.

main.php 에서


                                         
<tr>                                            
 <td td colspan="2" class="center"><label for="wr_3"><img src="images/main/question_icon.png"> 담당자 성명</label>
 </td>
 <td td colspan="2" class="center"><input type="text" name="wr_3" id="wr_3" required="required"/>
</tr>
  </td>
<tr>
  <td colspan="2"><label for="wr_5"><img src="images/main/question_icon.png"> 휴대폰번호</label>
  </td>
  <td>
  <input type="tel" name="wr_5" id="wr_5" required="required" onKeyup="inputTelNumber(this);" maxlength="13" onkeypress="inNumber(); " onkeydown='return onlyNumber(event)' onkeyup='removeChar(event)'/>
  </td>
</tr>
<tr>
 <td colspan="2"><label for="wr_6"><img src="images/main/question_icon.png"> e-mail</label>
 </td>
 <td colspan="2">
 <input type="text" name="wr_6" id="wr_6" required="required"/>
 </td>
</tr>
<tr>
 <td colspan="2"><label for="wr_7"><img src="images/main/question_icon.png"> 주소</label>
 </td>
 <td colspan="2">
 <input type="text" name="wr_7" id="wr_7" required="required"/>
  </td>
 </tr>
 </tr>
 <tr>
  <td colspan="4">
  <div id="reg_seelct">
  <div id="btn_reg">
  <input type="image" name="submit" src="images/main/button_new.png" value="확인"/>
 </div>

이런식으로 폼을 작성하면

 

write.php 


<html>
<body>
<?
echo print_r($_SESSION);
$wr_1 = $_POST['wr_1'];
$wr_2 = $_POST['wr_2'];
$wr_3 = $_POST['wr_3'];
$wr_4 = $_POST['wr_4'];
$wr_5 = $_POST['wr_5'];
$wr_6 = $_POST['wr_6'];
$wr_7 = $_POST['wr_7'];
$wr_8 = $_POST['wr_8'];
$wr_9 = $_POST['wr_9'];
 
function goto_url($url){
echo"<script>
      location.href='$url';
      </script>";
      exit;
}

$link = "~~~";
//goto_url($link);

?>
<?php
if(!$wr_3){
    echo "<script>alert('이름이없습니다.');</script>";
    function goto_url($url){
echo"<script>
      location.href='$url';
      </script>";
      exit;
}
    return false;
}
$link = "~~~";
$conn = mysqli_connect("localhost","id","pw","db");
// Check connection
if (mysqli_connect_errno()){
 echo "MySQL 연결에 실패하였습니다 : " . mysqli_connect_error();
}
//여기부터가 인코딩 세팅 부분이다. 코드는 PHP홈페이지에서 가져와 사용했다.
//주의할 점은 utf-8이 아니라 utf8로 적어야 한다는 점이다.(euc-kr도 euckr로 적어야 합니다.)
if (!$conn->set_charset("utf8")) {
    //printf("utf8 문자 세트를 가져오다가 에러가 났습니다 : %s\n", $conn->error);
} else {
//    printf("현재 문자 세트 : %s\n", $conn->character_set_name());
    //위 코드를 분석해 보면 알겠지만, character_set_name()은 PHP가 DB 인코딩을 뭘로 이해하고 있는지 가져오는 메서드다.
}
$date = date("Y-m-d H:i:s");

    $sql = " insert into g5_write_event11
                set wr_num = 1,
                     wr_reply = '$wr_reply',
                     wr_comment = 0,
                     ca_name = '$ca_name',
                     wr_option = '$html,$secret,$mail',
                     wr_subject = '$wr_1',
                     wr_content = '$wr_1',
                     wr_link1 = '$wr_link1',
                     wr_link2 = '$wr_link2',
                     wr_link1_hit = 0,
                     wr_link2_hit = 0,
                     wr_seo_title = '$wr_1',
                     wr_hit = 0,
                     wr_good = 0,
                     wr_nogood = 0,
                     mb_id = 'admin',
                     wr_password = '$wr_password',
                     wr_name = '최고관리자',
                     wr_email = '*** 개인정보보호를 위한 이메일주소 노출방지 ***',
                     wr_homepage = '$wr_homepage',
                     wr_datetime = '$date',
                     wr_last = '$date',
                     wr_ip = '{$_SERVER['REMOTE_ADDR']}',
                     wr_1 = '$wr_1',
                     wr_2 = '$wr_2',
                     wr_3 = '$wr_3',
                     wr_4 = '$wr_4',
                     wr_5 = '$wr_5',
                     wr_6 = '$wr_6',
                     wr_7 = '$wr_7',
                     wr_8 = '$wr_8',
                     wr_9 = '$wr_9',
                     wr_10 = '$wr_10' ";
mysqli_query($conn,$sql);

$wr_id = mysqli_insert_id($conn);
$sql_update = " update g5_write_event11 set wr_parent = '$wr_id', wr_num ='$wr_id'  where wr_id = '$wr_id' ";
mysqli_query($conn,$sql_update);
mysqli_close($conn);
 
// person.php 페이지로 이동
echo "<script>alert('접수가 완료되었습니다.');</script>";
echo ("<meta http-equiv='Refresh' content='1; URL= ~~~ '>");
?>
</body>
</html>

이런방식으로 db에 내용을 집어넣습니다.

혹시 main.php 에서 메일발송관련 코딩이 안되있어서 그런건가 싶어서 계속 확인을 하고있는데 초보자라 어려움을 겪고있습니다 ㅜㅜ

도움을 주시면 감사하겠습니다.

이 질문에 댓글 쓰기 :

답변 1

네 메일 보내는 부분이 빠지신거 같네요.

 

write_update.php 에 보시면 메일 보내는 부분이 있습니다. 참고하셔서 작업을 하시면 될거 같습니다.

답변 감사합니다.


if (!($w == 'u' || $w == 'cu') && $config['cf_email_use'] && $board['bo_use_email']) {

    // 관리자의 정보를 얻고
    $super_admin = get_admin('super');
    $group_admin = get_admin('group');
    $board_admin = get_admin('board');

    $wr_subject = get_text(stripslashes($wr_subject));

    $tmp_html = 0;
    if (strstr($html, 'html1'))
        $tmp_html = 1;
    else if (strstr($html, 'html2'))
        $tmp_html = 2;

    $wr_content = conv_content(conv_unescape_nl(stripslashes($wr_content)), $tmp_html);

    $warr = array( ''=>'입력', 'u'=>'수정', 'r'=>'답변', 'c'=>'코멘트', 'cu'=>'코멘트 수정' );
    $str = $warr[$w];

    $subject = '['.$config['cf_title'].'] '.$board['bo_subject'].' 게시판에 '.$str.'글이 올라왔습니다.';

    $link_url = get_pretty_url($bo_table, $wr_id, $qstr);

    include_once(G5_LIB_PATH.'/mailer.lib.php');

    ob_start();
    include_once ('./write_update_mail.php');
    $content = ob_get_contents();
    ob_end_clean();

    $array_email = array();
    // 게시판관리자에게 보내는 메일
    if ($config['cf_email_wr_board_admin']) $array_email[] = $board_admin['mb_email'];
    // 게시판그룹관리자에게 보내는 메일
    if ($config['cf_email_wr_group_admin']) $array_email[] = $group_admin['mb_email'];
    // 최고관리자에게 보내는 메일
    if ($config['cf_email_wr_super_admin']) $array_email[] = $super_admin['mb_email'];

    // 원글게시자에게 보내는 메일
    if ($config['cf_email_wr_write']) {
        if($w == '')
            $wr['wr_email'] = $wr_email;

        $array_email[] = $wr['wr_email'];
    }

    // 옵션에 메일받기가 체크되어 있고, 게시자의 메일이 있다면
    if (strstr($wr['wr_option'], 'mail') && $wr['wr_email'])
        $array_email[] = $wr['wr_email'];

    // 중복된 메일 주소는 제거
    $unique_email = array_unique($array_email);
    $unique_email = run_replace('write_update_mail_list', array_values($unique_email), $board, $wr_id);

    for ($i=0; $i<count($unique_email); $i++) {
        mailer($wr_name, $wr_email, $unique_email[$i], $subject, $content, 1);
    }
}


write_update.php 에서 이부분이 메일관련 부분인거같은데 이거를 어떻게 적용해야할까요,,,?

답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

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