mail설정 php 문법
본문
<?php
include "mailer.php";
include_once("./_common.php");
$mode = $_REQUEST['mode'];
$name = $_REQUEST['name'];
$hp1 = $_REQUEST['hp1'];
$hp2 = $_REQUEST['hp2'];
$hp3 = $_REQUEST['hp3'];
$hp = $hp1."-".$hp2."-".$hp3;
$email = $_REQUEST['email'];
$areaname = $_REQUEST['areaname'];
$questype = $_REQUEST['questype'];
$content = $_REQUEST['content'];
$ip = $_SERVER['REMOTE_ADDR'];
$wr_name = $_REQUEST['wr_name'];
$wr_1 = $_REQUEST['wr_1'];
$wr_2 = $_REQUEST['wr_2'];
$wr_3 = $_REQUEST['wr_3'];
$wr_4 = $_REQUEST['wr_4'];
$subject = "[ ] $wr_name ($wr_1)";
$body = "";
$body2 = "<table border='0' cellspacing='1' cellpadding='3' bgcolor='#e5e5e5'>";
$body2.= "<tr bgcolor='white'><td align='center' height='25' style='padding:10px'> </td><td align='left' style='padding:10px'>$wr_name</td></tr>";
$body2.= "<tr bgcolor='white'><td align='center' height='25' style='padding:10px'> </td><td align='left' style='padding:10px'>$wr_1</td></tr>";
$body2.= "<tr bgcolor='white'><td align='center' height='25' style='padding:10px'> </td><td align='left' style='padding:10px'>$wr_2</td></tr>";
$body2.= "<tr bgcolor='white'><td align='center' height='25' style='padding:10px'> </td><td align='left' style='padding:10px'>$wr_3</td></tr>";
$body2.= "<tr bgcolor='white'><td align='center' height='25' style='padding:10px'> </td><td align='left' style='padding:10px'>$wr_4</td></tr>";
$body2.= "</table>";
//$admin_email = "받을 메일주소 입력";
$admin_email = " ";
if($mode == "send") {
//파일첨부 시작
for($i=1;$i<=3;$i++) {
$file[$i] = $_FILES['userfile'.$i]['name'];
$target[$i] = "./temp/".$file[$i];
if (move_uploaded_file($_FILES['userfile'.$i]['tmp_name'], $target[$i])) {
chmod("$target[$i]", 0777);
}
}
$ret = mailer($name, $email, "Admin", $admin_email, $subject, $body.$body2, $file);
if($file[1] != "") @unlink($target[1]);
if($file[2] != "") @unlink($target[2]);
if($file[3] != "") @unlink($target[3]);
ob_start();
$content = ob_get_contents();
ob_end_clean();
$bo_table = "online";
$write_table = $g5['write_prefix'] . $bo_table;
$wr_num = get_next_num($write_table);
$wr_reply = "";
$secret = "secret";
$sql = " insert into $write_table
set wr_num = '$wr_num',
wr_reply = '$wr_reply',
wr_comment = 0,
ca_name = '$ca_name',
wr_option = '$html,$secret,$mail',
wr_subject = '$wr_subject',
wr_content = '$wr_content',
wr_link1 = '$wr_link1',
wr_link2 = '$wr_link2',
wr_link1_hit = 0,
wr_link2_hit = 0,
wr_hit = 0,
wr_good = 0,
wr_nogood = 0,
mb_id = '{$member['mb_id']}',
wr_password = '$wr_password',
wr_name = '$wr_name',
wr_email = '$wr_email',
wr_homepage = '$wr_homepage',
wr_datetime = '".G5_TIME_YMDHIS."',
wr_last = '".G5_TIME_YMDHIS."',
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' ";
sql_query($sql);
$wr_id = sql_insert_id();
sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");
sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '{$member['mb_id']}' ) ");
sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");
}
?>
<?
alert(" ");
?>
제가 메일 관련해서 인터넷에서 찾다가 발견한 php 코드인데요.
메일을 보내기 위해서는 노란부분을 제외한 나머지 부분은 필수로 작성 해야지만 가능한 건가요?
저기서 몇개씩 빼보면서 작성을 했을때 메일은 가지는데 혹시나 다른 문제가 발생하는지 그걸 모르겠어요. 그리고 저것보다 간단하게 코딩할수는 없나요?
그리고 메일이나 게시판 만드는 코드작성 및 공부를 하기위해 참고할 사이트나 책이 있으면 알려주세요.
저 코딩대로 쓰면 메일이 보내지긴 하는데 저기 들어가는 명령어들이 어떤건지 왜 들어가는지 검색해도 잘 안나오고... 따라해보려고 해도 너무 어려워요...
답변 1
흠 smtp 사용하는거같은데....
그경우 서버에 메일 서버 셋팅이되있어야 하고 서버가 화이트 리스트에 들어있어야 합니다.
문제는 보통 메일은 웹서버와 별도운영하는 경우가 많다는 거죠.
pop3 연결로 보내는 코드를 이용해보시는게 좋습니다.