테스트 사이트 - 개발 중인 베타 버전입니다

폼메일에서 파일첨부 항목 추가 어떻게 해야 할까요?ㅠㅠ

트리샤 11년 전 조회 6,709

아래의 소스(php 한개파일) 를 폼메일로 잘 사용하고 있습니다.

 

input type text는 잘 사용하고 있는데,  file첨부를 추가했는데, 아무런 장치 없이 input="text를 input="file"로 바꿨더니,

 

메일로 파일명만 가는데요, 어떻게 해야 할까요?ㅠ

 

(&.. 주소를 "우편번호찾기"를 통해 기입하려면 어떻게 해야 하는지도... 궁금합니다!!!) 구현되는 url은 아래와 같습니다.

http://kone-store.com/shop/form_mail.php">http://kone-store.com/shop/form_mail.php

 

====================================== 원본 소스 ===========================================

파일첨부 부분은 붉게 표시되어 있습니다. (주소부분은 푸르게 표시되어 있습니다.)

 

보상판매 [메일발송]이 모두 완료됩니다.  // php 파일이므로 웹서버에 직접 올려야 정상동작 합니다.

 // 메일 받는사람을 고정시키거나 추가할 수 있습니다.  // 입력란 추가항목은 50개 이상 추가할 수 있습니다.  // 별표(★) 표시된 설정항목 확인후 서버에 올려서 테스트 하십시오

 // [★ 설정 1] 스팸메일에 악용될 우려 때문에 기본상태는 메일발송 차단되게 되어 있으니  // 본 파일을 실제 사용하려면 이 설정항에 'yes' 를 대입하십시오.   $it_uses = "yes";  // [★ 설정 2] 메일을 받을 사람을 특정인(관리자)으로 고정하려면 그 메일주소와  이름을 대입하십시오.   $to_mail_set = "treashya@naver.com";  // 메일주소   $to_name_set = "KON AV";  // 이름  // [★ 설정 3] 메일전송 완료후의 출력페이지를 지정하려면 URL 주소 대입(기본상태는 메일 입력폼이 다시 출력됨)   $after_url="$_SERVER[PHP_SELF]";

   if($_POST['f_mailsend']){   // 메일발송    send_mail_action($to_mail_set,$to_name_set);   // [★ 설정 4] 메일 받을 사람을 여럿 추가하려면      send_mail_action("treashya@nate.com","최윤희 네이트");   // 위의 코드를 메일주소,이름만 바꿔서 여기에 반복해 넣어 주면 됨.    alert_msg("메일발송 완료되었습니다.",$after_url);  }

?>

 

 

 

 

  

      

  

           ";   echo "";   }else{   ?>

  

                           

  

                                                                        

  

                            

  

                                                                                                                                  

  

 

 

  

 

     

      

 

보상판매 신청양식
* 고객정보
받는 사람 이름받는 사람 메일주소
이름이메일
전화번호 - -
핸드폰번호 - -
주 소
* 구입희망제품 구입하고자 하는 제품의 브랜드 및 제품명을 작성해주세요.
구입희망제품
* 보상판매제품 보상판매하고자 하는 제품의 브랜드 및 제품명, 제품상태를 자세히 작성해주세요.
소유제품명
희망보상가격
제품상태
제품이미지 01
제품이미지 02
제품이미지 03
남기고 싶은말
http://kone-store.com/shop/data/skin/treashya/board/default/img/board_btn_write.gif">http://kone-store.com/shop/data/skin/treashya/board/default/img/board_btn_write.gif" border=0>

 

 

 

// 메일내용 html 구성 function mail_body_html($body){

 $join_html= <<

             

  

   

         

EOF_LINE;

   // 추가입력란 삽입    for($i=1; $i<50; $i++){ // 입력추가항목이 50개 이상 된다면 '50'을 수정할것     if(!$_POST['add_title_'.$i]) continue;     $title=$_POST['add_title_'.$i];  $value=$_POST['add_value_'.$i];     $join_html.="       

                    ";    }

 $join_html.= <<

   

보낸사람 $_POST[mail_from_name]  <$_POST[mail_from_email]>
받은사람 $_POST[mail_to_name]  <$_POST[mail_to_email]>
$title $value

   

                                                            
        $_POST[mail_subject]      
             $body      

    

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 " ";  exit; }

?>

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

기존 항목에서 연결된 변수나 인클루드된곳을 찾아서 편집하시면되겠네요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

11년 전

enctype="multipart/form-data"​>

 

 

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인