메일이 보내지지 않는 문제...
/bbs 폴더에 있는....'formmail.php' 와 'formmailsend.php' 를
이용자면 누구나 지정한 관리자에게 메일을 보낼수 있도록 메일을 받는 사람관련 변수를
약간 수정했고 회원 | 비회원구분없이 보낼수 있도록 위 파일을 링크를 걸어서 페이지로
만들었습니다....
'formmail.php' --> 'formmail2.php'
'formmailsend.php' --> 'formmailsend2.php'
수정한 변수
$admin_name = "관리자";
$mb[mb_email] = admin@test.net; // 예: 관리자 메일주소
메일내용을 입력하고 난뒤, formamailsend.php에 값이 넘어가면 '메일이 발송되었습니다'라는
메세지까지는 나오는데....관리자메일주소로 가서 확인해보면 메일이 들어오지를 않습니다.
'한메일', '깨비메일', '드림위즈' 모두 테스트했는데 다 메일이 수신이 안되는군요.
다른 환경을 바꾸어야 하는지, 아래 소스를 그대로 뿌렸으니 아시는분 리플좀 부탁드립니다.
--------------------------
formmail2.php
--------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "THEMA_Z");
$cfg[leftmargin] = $cfg[topmargin] = 0;
/*--------------------------- 숨김
if (!$member[mb_id] && $cfg[formail_is_member]) {
echo "<script language='javascript'> alert('회원만 이용하실 수 있습니다.'); window.close(); </script>";
exit;
}
-----------------------------*/
$html_title = "메일보내기";
if ($mb_id) {
$mb = get_member($mb_id);
if ($mb[0] == false) {
echo "<script language='javascript'> alert('회원정보가 존재하지 않습니다.\\n\\n탈퇴하였을 수 있습니다.'); window.close(); </script>";
exit;
}
if ($mb[mb_open] == false && $is_admin != 'default') {
echo "<script language='javascript'> alert('정보공개를 하지 않았습니다.'); window.close(); </script>";
exit;
}
}
$mb[mb_name] = "관리자";
$mb[mb_email] = "yesmoa@dreamwiz.com";
if (!isset($type)) { $type = 0; }
$type_checked[0] = $type_checked[1] = $type_checked[2] = "";
$type_checked[$type] = "checked";
?>
<img src='image/title_formmail.gif'><br>
<div align=center>
<table width=99% cellpadding=5 cellspacing=0>
<form name=fformmail method=post action="./?doc=bbs/formmailsend.php" enctype="multipart/form-data" onsubmit="return formcheck(this);">
<input type='hidden' name='to' value='<?=$mb[mb_email]?>'>
<input type='hidden' name='attach' value='2'>
<tr>
<td><img src='image/icon_formmail.gif'> <B><?=$mb[mb_name]?></B>님께 메일보내기</td>
</tr>
</table>
<table width=99% cellpadding=1 cellspacing=0 bgcolor=#CCCCCC>
<tr>
<td>
<table width=100% cellpadding=4 cellspacing=0 bgcolor=#FFFFFF>
<? if ($member[mb_id]) { // 회원이면 ?>
<input type='hidden' name='fname' value='<?=$member[mb_name]?>'>
<input type='hidden' name='fmail' value='<?=$member[mb_email]?>'>
<? } else { ?>
<tr><td bgcolor=#F3F3F3 width=60> 이름 </td><td><input type=text class='input' size='63' name='fname' required minlength=2 itemname='이름'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3 width=60> E-MAIL </td><td><input type=text class='input' size='63' name='fmail' required email itemname='E-MAIL'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<? } ?>
<tr><td bgcolor=#F3F3F3 width=60> 제목 </td><td><input type=text class='input' size='63' name='subject' required itemname='제목'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 선택 </td><td><input type='radio' name='type' value='0' <?=$type_checked[0]?>> TEXT <input type='radio' name='type' value='1' <?=$type_checked[1]?>> HTML <input type='radio' name='type' value='2' <?=$type_checked[2]?>> TEXT+HTML</td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 내용 </td><td><textarea name="content" class='textarea' cols=63 rows='9' required itemname='내용'></textarea></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 첨부파일 #1</td><td><input type=file class='input' size=50 name='file1'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 첨부파일 #2</td><td><input type=file class='input' size=50 name='file2'></td></tr>
</table>
</td>
</tr>
</table><br>
<input type=image src='image/btn_send_mail.gif' border=0> <a href="javascript:window.close();"><img src='image/btn_close.gif' border=0></a>
</div>
<script language='javascript'>
function formcheck(f)
{
if (f.file1.value || f.file2.value) {
if (confirm("첨부파일의 용량이 큰경우 전송시간이 오래 걸립니다.\n\n메일보내기를 두번 이상 클릭하지 마십시오.")) {
return true;
}
} else {
return true;
}
return false;
}
</script>
---------------------------------
formmailsend2.php
----------------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "THEMA_Z");
$html_title = "메일발송중";
for ($i=1; $i<=$attach; $i++) {
if ($_FILES["file".$i][name]) {
$file[] = attach_file($_FILES["file".$i][name], $_FILES["file".$i][tmp_name]);
}
}
$content = stripslashes($content);
if ($type == 2) {
$type = 1;
$content = preg_replace("/\n/", "<br>", $content);
}
// html 이면
if ($type) {
$current_url = get_current_url();
$mail_content = "<html><head><meta http-equiv='content-type' content='text/html; charset=euc-kr'><title>메일보내기</title><link rel='stylesheet' href='$current_url/style.css' type='text/css'></head><body>$content</body></html>";
} else {
$mail_content = $content;
}
mailer($fname, $fmail, $to, $subject, $mail_content, $type, $file, "EUC-KR");
?>
<script language='javascript'>
alert('메일이 정상적으로 발송되었습니다!!');
location.href('?doc=./bbs/formmail2.php');
</script>
이용자면 누구나 지정한 관리자에게 메일을 보낼수 있도록 메일을 받는 사람관련 변수를
약간 수정했고 회원 | 비회원구분없이 보낼수 있도록 위 파일을 링크를 걸어서 페이지로
만들었습니다....
'formmail.php' --> 'formmail2.php'
'formmailsend.php' --> 'formmailsend2.php'
수정한 변수
$admin_name = "관리자";
$mb[mb_email] = admin@test.net; // 예: 관리자 메일주소
메일내용을 입력하고 난뒤, formamailsend.php에 값이 넘어가면 '메일이 발송되었습니다'라는
메세지까지는 나오는데....관리자메일주소로 가서 확인해보면 메일이 들어오지를 않습니다.
'한메일', '깨비메일', '드림위즈' 모두 테스트했는데 다 메일이 수신이 안되는군요.
다른 환경을 바꾸어야 하는지, 아래 소스를 그대로 뿌렸으니 아시는분 리플좀 부탁드립니다.
--------------------------
formmail2.php
--------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "THEMA_Z");
$cfg[leftmargin] = $cfg[topmargin] = 0;
/*--------------------------- 숨김
if (!$member[mb_id] && $cfg[formail_is_member]) {
echo "<script language='javascript'> alert('회원만 이용하실 수 있습니다.'); window.close(); </script>";
exit;
}
-----------------------------*/
$html_title = "메일보내기";
if ($mb_id) {
$mb = get_member($mb_id);
if ($mb[0] == false) {
echo "<script language='javascript'> alert('회원정보가 존재하지 않습니다.\\n\\n탈퇴하였을 수 있습니다.'); window.close(); </script>";
exit;
}
if ($mb[mb_open] == false && $is_admin != 'default') {
echo "<script language='javascript'> alert('정보공개를 하지 않았습니다.'); window.close(); </script>";
exit;
}
}
$mb[mb_name] = "관리자";
$mb[mb_email] = "yesmoa@dreamwiz.com";
if (!isset($type)) { $type = 0; }
$type_checked[0] = $type_checked[1] = $type_checked[2] = "";
$type_checked[$type] = "checked";
?>
<img src='image/title_formmail.gif'><br>
<div align=center>
<table width=99% cellpadding=5 cellspacing=0>
<form name=fformmail method=post action="./?doc=bbs/formmailsend.php" enctype="multipart/form-data" onsubmit="return formcheck(this);">
<input type='hidden' name='to' value='<?=$mb[mb_email]?>'>
<input type='hidden' name='attach' value='2'>
<tr>
<td><img src='image/icon_formmail.gif'> <B><?=$mb[mb_name]?></B>님께 메일보내기</td>
</tr>
</table>
<table width=99% cellpadding=1 cellspacing=0 bgcolor=#CCCCCC>
<tr>
<td>
<table width=100% cellpadding=4 cellspacing=0 bgcolor=#FFFFFF>
<? if ($member[mb_id]) { // 회원이면 ?>
<input type='hidden' name='fname' value='<?=$member[mb_name]?>'>
<input type='hidden' name='fmail' value='<?=$member[mb_email]?>'>
<? } else { ?>
<tr><td bgcolor=#F3F3F3 width=60> 이름 </td><td><input type=text class='input' size='63' name='fname' required minlength=2 itemname='이름'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3 width=60> E-MAIL </td><td><input type=text class='input' size='63' name='fmail' required email itemname='E-MAIL'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<? } ?>
<tr><td bgcolor=#F3F3F3 width=60> 제목 </td><td><input type=text class='input' size='63' name='subject' required itemname='제목'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 선택 </td><td><input type='radio' name='type' value='0' <?=$type_checked[0]?>> TEXT <input type='radio' name='type' value='1' <?=$type_checked[1]?>> HTML <input type='radio' name='type' value='2' <?=$type_checked[2]?>> TEXT+HTML</td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 내용 </td><td><textarea name="content" class='textarea' cols=63 rows='9' required itemname='내용'></textarea></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 첨부파일 #1</td><td><input type=file class='input' size=50 name='file1'></td></tr>
<tr><td colspan=2 bgcolor=#FFFFFF height=1></td></tr>
<tr><td bgcolor=#F3F3F3> 첨부파일 #2</td><td><input type=file class='input' size=50 name='file2'></td></tr>
</table>
</td>
</tr>
</table><br>
<input type=image src='image/btn_send_mail.gif' border=0> <a href="javascript:window.close();"><img src='image/btn_close.gif' border=0></a>
</div>
<script language='javascript'>
function formcheck(f)
{
if (f.file1.value || f.file2.value) {
if (confirm("첨부파일의 용량이 큰경우 전송시간이 오래 걸립니다.\n\n메일보내기를 두번 이상 클릭하지 마십시오.")) {
return true;
}
} else {
return true;
}
return false;
}
</script>
---------------------------------
formmailsend2.php
----------------------------------
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "THEMA_Z");
$html_title = "메일발송중";
for ($i=1; $i<=$attach; $i++) {
if ($_FILES["file".$i][name]) {
$file[] = attach_file($_FILES["file".$i][name], $_FILES["file".$i][tmp_name]);
}
}
$content = stripslashes($content);
if ($type == 2) {
$type = 1;
$content = preg_replace("/\n/", "<br>", $content);
}
// html 이면
if ($type) {
$current_url = get_current_url();
$mail_content = "<html><head><meta http-equiv='content-type' content='text/html; charset=euc-kr'><title>메일보내기</title><link rel='stylesheet' href='$current_url/style.css' type='text/css'></head><body>$content</body></html>";
} else {
$mail_content = $content;
}
mailer($fname, $fmail, $to, $subject, $mail_content, $type, $file, "EUC-KR");
?>
<script language='javascript'>
alert('메일이 정상적으로 발송되었습니다!!');
location.href('?doc=./bbs/formmail2.php');
</script>
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 1개
위와는 별도 참고로...모든 폼메일이 작동하지 않는거 같다는 생각이 드는게
관리자모드의 환경설정에서 '메일보내기' -> '예'로 해두고...그룹관리자는 별도로 지정안한상태이면
메일은 '관리자'에게 보내져야 하는게 아닌지요..근데..메일이 들어오질 않네요...'회원가입'메일도 물론 안들어오고.....(테스트:한메일, 드림위즈, 깨비메일)