묻고답하기

네, 제목에서와 같이

php 웹메일을 xe 내에 있는 외부페이지와 연동하려 합니다.

php파일을 이미 제 서버에 업로드한 상태구요.

혹시나 해서 redutf8으로 변환작업해서 업로드를 해도 그냥 백지상태만 나타납니다. 혹시 변환 작업을 제가 실수하고 있는거라면 여러분께서 아래 코드를 utf-8으로 변환해 올려주세요.emoticon

다른 php파일은 잘 표현되는 걸로 보아 제가 사용하려는 이 php파일에 문제가 있는듯 한데 초보라 파악하지 못하고 있습니다.

아래는 제가 사용하려는 웹메일 php입니다.

잘 부탁드립니다. 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

<?


  $it_uses = "yes";


 
  $to_mail_set = "abcde@yahoo.com";  
  $to_name_set = "admin";  


 
  $after_url="$_SERVER[PHP_SELF]";

 

 if($_POST['f_mailsend'+ '+ ']){

  
   send_mail_action($to_mail_set,$to_name_set);

  


   alert_msg("메일발송 완료되었습니다.",$after_url);
 }

?>

 

 


<html>
 <head>
 <title> 웹메일 신청 </title>
 <meta http-equiv='Content-Type' content='text/html; charset=euc-kr'>

 <style type='text/css'>
  BODY,TD,TR,input,DIV,form,pre,select,textarea{font-size:9pt; font-family:Tahoma, 굴림; word-break:break-all;}
  form{margin:0; padding:0; display:inline;}
 </style>

 <script language=JavaScript>

  
  function form_mail_submit(){

   if(no_value('mail_subject'+ '))    return error_msg('mail_subject','주소를 입력하세요.');
   if(no_value('mail_to_name'))    return error_msg('mail_to_name','받는사람 이름을 입력하세요.');
   if(no_value('mail_from_name'))    return error_msg('mail_from_name','보내는사람 이름을 입력하세요.');
   if(no_value('mail_body'))    return error_msg('mail_body','본문내용을 입력하세요.');

   if(no_value('add_value_1'))    return error_msg('add_value_1','기타1 를 입력하세요.');
   if(no_value('add_value_2'+ '))    return error_msg('add_value_2',기타2 를 입력하세요.');
   if(no_value('add_value_3'))    return error_msg('add_value_3','기타3 를 입력하세요.');
  
   
   if(!document.MailWriteForm.mail_to_email.value.match(/\S+@\S+\.\S+/)) return error_msg('mail_to_email','받는사람 이메일을 확인하세요.');
   if(!document.MailWriteForm.mail_from_email.value.match(/\S+@\S+\.\S+/)) return error_msg('mail_from_email','보내는 사람 이메일을 확인하세요');
   document.MailWriteForm.submit();
  }
  function no_value(inputName){
   value=eval('document.MailWriteForm.'+inputName).value.replace(/\s/g,"");
   if(!value) return 1;
  }
  function error_msg(inputName,msg){
   alert(msg);
   eval('document.MailWriteForm.'+inputName).focus();
   return false;
  }

 </script>

 </head>

 <body bgcolor=#ffffff>

 

 


<!--------- 테투리 라운딩-------------------------------------------------------------->
<table border=0 cellpadding=0 cellspacing=0 align=left>
<tr>
<td width=12 height=11 background='r1.gif'></td>
<td height=11 background='r2.gif'></td>
<td width=13 height=11 background='r3.gif'></td>
</tr>
<tr>
<td width=12 background='r4.gif'></td>
<td align=center style='padding:2;'>
<!--------- 테두리 라운딩-------------------------------------------------------------->

 

 

 

<FORM method='post' name="MailWriteForm" action="<?=$_SERVER['PHP_SELF']?>">
 <input type=hidden name='f_mailsend' value='1'>

 <table width=400 border=0 cellpadding=1 cellspacing=1>

  <tr>
   <td colspan=2 bgcolor=#f5f5f5>&nbsp; <img src='write_hand.gif' align=absmiddle> &nbsp; <b>웹폼메일</b></td>
  </tr>

  <tr><td colspan=2 height=5 style='padding:0;'></td></tr>


<? 
   if($to_mail_set and $to_name_set){
    echo "<input type=hidden name='mail_to_email' value='$to_mail_set'>";
    echo "<input type=hidden name='mail_to_name' value='$to_name_set'>";
   }else{
?>

  <tr>
   <td bgcolor=#f7f7f7><img src='arow.gif' align=absmiddle> 받는 사람 이름</td>
   <td><input type=text name='mail_to_name' style='border:1px solid #aaaaaa; width:150px;'></td>
  </tr>
  <tr>
   <td bgcolor=#f7f7f7><img src='arow.gif' align=absmiddle> 받는 사람 이메일</td>
   <td><input type=text name='mail_to_email' style='border:1px solid #aaaaaa; width:150px;'></td>
  </tr>
  <tr><td colspan=2 height=5 style='padding:0;'></td></tr>

<?}?>

  <tr>
   <td bgcolor=#f7f7f7><img src='arow.gif' align=absmiddle> 보내는 사람 이름</td>
   <td><input type=text name='mail_from_name' style='border:1px solid #aaaaaa; width:150px;'></td>
  </tr>

  <tr>
   <td bgcolor=#f7f7f7><img src='arow.gif' align=absmiddle> 보내는 사람 이메일</td>
   <td><input type=text name='mail_from_email' style='border:1px solid #aaaaaa; width:150px;'+ '></td>
  </tr>


  <tr><td colspan=2 height=5 style='padding:0;'></td></tr>


  <tr>
   <td bgcolor=#f7f7f7><img src='arow.gif' align=absmiddle> 제목</td>
   <td><input type=text name='mail_subject' style='border:1px solid #aaaaaa; width:250px;'></td>
  </tr>

 

 

  <tr>
   <td bgcolor=#f7f7f7>
    <img src='arow.gif' align=absmiddle> 기타1
   </td>
   <td>
    <input type=hidden name='add_title_1' value="beds">
    <input type=text name='add_value_1' style='border:1px solid #aaaaaa; width:250px;'>
   </td>
  </tr>

  <tr>
   <td bgcolor=#f7f7f7>
    <img src='arow.gif' align=absmiddle> 기타2
   </td>
   <td>
    <input type=hidden name='add_title_2' value="baths">
    <input type=text name='add_value_2' style='border:1px solid #aaaaaa; width:250px;'>
   </td>
  </tr>


  <tr>
   <td bgcolor=#f7f7f7>
    <img src='arow.gif' align=absmiddle> 기타3
   </td>
   <td>
    <input type=hidden name='add_title_3' value="sqft">
    <input type=text name='add_value_3' style='border:1px solid #aaaaaa; width:250px;'>
   </td>
  </tr>

  <tr>
   <td bgcolor=#f7f7f7>
    <img src='arow.gif' align=absmiddle> 기타4
   </td>
   <td>
    <input type=hidden name='+ 'add_title_4' value="lot">
    <input type=text name='add_value_4' style='border:1px solid #aaaaaa; width:250px;'>
   </td>
  </tr>

  <tr>
   <td bgcolor=#f7f7f7>
    <img src='arow.gif' align=absmiddle> 기타5
   <td>
    <input type=hidden name='add_title_5' value="built">
    <input type=text name='+ 'add_value_5' style='border:1px solid #aaaaaa; width:250px;'>
   </td>
  </tr>

 

 

  <tr><td colspan=2 height=5 style='padding:0;'></td></tr>

 

  <!--- 본문 입력란 --->
  <tr>
   <td colspan=2 align=center>
    <textarea name='mail_body'
    style="border:1px solid #aaaaaa; width:100%; height:150px; overflow:auto; background-image:url('wrback.gif'); line-height:150%;"></textarea>
   </td>
  </tr>

 </table>

 <br>

 <!--- 전송버튼 --->
 <a onclick="javascript:form_mail_submit()" style='cursor:pointer;'><img src="button_write_ok.gif" border=0></a>

</FORM>

 

 

 


<!--------- 테두리 라운딩-------------------------------------------------------------->
</td>
<td width=13 background='r5.gif'></td>
</tr>
<tr>
<td width=12 height=11 background='r6.gif'></td>
<td height=11 background='r7.gif'></td>
<td width=13 height=11 background='r8.gif'></td>
</tr>
</table>
<!--------- 테두리 라운딩-------------------------------------------------------------->

 


<pre style="line-height:150%;">

  <img src='arow.gif' align=absmiddle> <b>form_mail.php</b>
.아
.아
.아
.아


</pre>

</body>
</html>

 

 

 

 

 

<?


function mail_body_html($body){

 $join_html= <<<EOF_LINE


 <html>
  <head>
  <meta http-equiv='Content-Type' content='text/html; charset=euc-kr'>
  <style type=text/css>
   body,td,input,div,select,textarea{font-size:9pt; font-family:굴림,Tahoma; line-height:140%; word-break:break-all;}
  </style>
  </head>

  <body bgcolor='#ffffff' topmargin=5>


   <table width=90% border=1 cellspacing=0 cellpadding=1 frame=void bordercolordark='#ffffff'+ ' bordercolorlight='#eeeeee' style='margin-bottom:8px;'>
    <tr><td width=120><b>ㆍ</b>보낸사람</td><td> $_POST[mail_from_name]  &lt;$_POST[mail_from_email]&gt;</td></tr>
    <tr><td width=120><b>ㆍ</b>받은사람</td><td> $_POST[mail_to_name]  &lt;$_POST[mail_to_email]&gt;</td></tr>

EOF_LINE;

   for($i=1; $i<50; $i++){
    if(!$_POST['add_title_'.$i]) continue;
    $title=$_POST['+ 'add_title_'.$i];  $value=$_POST['add_value_'.$i];
    $join_html.="
      <tr>
       <td width=120><b>ㆍ</b>$title</td><td> $value</td>
      </tr>
     ";
   }

 $join_html.= <<<EOF_LINE

   </table>

   <table width=98% cellpadding=0 cellspacing=0 border=0 bgcolor='#ffffff' style='border:1px solid #1578FF;'>
    <tr><td height=1 bgcolor='#A9CDFF'></td></tr>
    <tr><td height=1 bgcolor='#67A7FF'></td></tr>
    <tr>
     <td bgcolor='#1578FF' style='padding:2px; padding-left:6px; color:#ffffff; font-weight:bold;'>
      &nbsp; $_POST[mail_subject]
     </td>
    </tr>
    <tr><td height=1 bgcolor='#67A7FF'></td></tr>
    <tr><td height=1 bgcolor='#A9CDFF'></td></tr>
    <tr><td height=1 bgcolor='#1578FF'></td></tr>
    <tr>
     <td style='padding:5px'>
      <!--메일 본문 내용-->
      $body
     </td>
    </tr>
   </table>

  </body>
 </html>

EOF_LINE;

 return $join_html;

}

 

 

 


function send_mail_action($snd_mail,$snd_name){
 if($GLOBALS['it_uses'] != 'yes'+ ') alert_msg("메일발송 실패 했습니다. 소스내의 '설정항목1' 을 우선 확인하십시오.");

 if($snd_mail) $_POST['mail_to_email'] = $snd_mail;
 if($snd_name) $_POST['mail_to_name'] = $snd_name;

 if(!org_mail($_POST['mail_to_email'])) alert_msg('받는 사람 메일주소가 잘못 되었습니다.');
 if(!org_mail($_POST['mail_from_email'])) alert_msg('보내는 사람 메일주소가 잘못 되었습니다.');

 if(!$_POST['mail_subject']) alert_msg('제목을 입력하십시오.');
 if(!$_POST['mail_to_name']) alert_msg('받는사람 이름을 입력하십시오.');
 if(!$_POST['mail_from_name']) alert_msg('보내는사람 이름을 입력하십시오.');

 if(!$_POST['mail_body']) alert_msg('본문 내용을 입력하십시오.');

 $mail_to = "\"$_POST[mail_to_name]\" <$_POST[mail_to_email]>";
 $mail_from = "\"$_POST[mail_from_name]\" <$_POST[mail_from_email]>";

 $head  = "From:$_POST[mail_from_email]\n";
 $head .="Content-Type: text/html\n";
 $head .="Reply-To:$_POST[mail_from_email]\n";
 $head .="X-Mailer:PHP/".phpversion();

 $body=nl2br($_POST['mail_body']);
 $body=stripslashes($body);
 $body=mail_body_html($body);

 return @mail($mail_to,$_POST['mail_subject'],$body,$head);
}


function org_mail($mail){
 if(!preg_match("/\S+@(\S+\.\S+)/",$mail,$Tmp)) return ;
 // if(!checkdnsrr($Tmp[1], "MX") and !checkdnsrr($Tmp[1], "A")) return ;
 return 1;
}


function alert_msg($msg,$after_url=""){
 $msg=preg_replace("/\"/","'",$msg);
 echo " <script language='JavaScript'> alert(\"$msg\"); ";
 if($after_url) echo " location.href='$after_url'; ";
 else echo " history.go(-1); ";
 echo "</script>";
 exit;
}

 


?>

글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
뽀칠이 확장변수 잘안되서 문의 드립니다. [2] file 2008.06.22 by 뽀칠이
비엔비 RSS 기능 잠긴거 풀려면 [1] 2008.06.22 by 백성찬
샬리온 드디어 엑박은 안뜨지만;; [2] file 2008.06.22 by 샬리온
zzzz zzzz [1] 2008.06.22 by 우야꼬
정기태 Javascript 가 Zb 4 게시판 에서는 잘 구현이 되는데, Zb XE에서는 구현이 않되요.  
Narue zb4에서 xe로 마이그레이션 할때 링크가 제대로...  
가이스트 관리자 로그인시 오류... [2] 2008.06.22 by 가이스트
라운 php파일을 외부페이지를 통해 xe에 넣고자 [6] 2008.06.22 by 라운
SKYMARU 글 읽을때 마다 조회수 증가를 좀 응용해서..  
왜만지냐 멀티미디어컴포넌트 네비게이션바에 대한 질문입니다.  
mm 제로보드를 잘 올렸었는데 서버를 내렸다가 올리니.. [13] 2008.06.22 by 베네통
이혁중 요청하신 모듈을 찾을 수 없습니다 에러. [1] 2008.06.22 by 베네통
porry 웹진형 게시판에서 최근게시물 합쳐진거 있나요?  
박카스_ HTML 체크를 하지 않으면 위지윅에디터에 글이 써지지 않는 문제  
정상민88 멀티미디어 파일 본문삽입시 재생문제 [2] file 2008.06.21 by 백성찬
자스민향기 제로보드 질문입니다..도와주세요.. [2] 2008.06.21 by 자스민향기
정승용598 설문조사 오류....  
샬리온 미치 겠어요 ~~로고 ㅠㅠ [11] file 2008.06.21 by 샬리온
SKYMARU 최근 게시글에서 카테고리 이름 불러오는 방법..  
빨대 자동로그인 기능고장 고쳐주세요. [1] 2008.06.21 by 띵야
SSLi 로그인하면 무조건 http:// 로 넘어가는데, 어디서 수정하나요? [2] 2008.06.21 by SSLi
longriver zbxe 설치시 오류... [2] 2008.06.21 by 백성찬
ⓒ블루엔젤™ 확장 변수가 아닌 추가변수 사용시  
쿨우 제로보드 오류 [1] file 2008.06.21 by 대암지기
샬리온 배너대해 질문합니다 [8] 2008.06.21 by 샬리온
주호암 질문 ~ 급해요~ [1] 2008.06.21 by C。9ːHena〃
김효희 메뉴를 클릭하면 Not Found라고.. 나와요 [1] 2008.06.21 by 백성찬
안칠현 주소창 주소 관련해서 간단한 질문 [1] 2008.06.21 by 백성찬
마당쇠 이 파일 좀 찾아주세요~ file  
RuS 게시판의 제목을 클릭하면 링크된 문서가 열리게 하는방법 [2] 2008.06.21 by RuS