php 폼메일에 첨부파일(용량제한 2M)

php 폼메일에 첨부파일(용량제한 2M)

작성일 2006.02.15댓글 1건
    게시물 수정 , 삭제는 로그인 필요

sub03_04.php 파일-------------------------------------------------------

 

<form name="ask"  method="post" action="sub03_04_ok.php">

<table border="0" align="center" cellpadding="0" cellspacing="0">
          <tr>
            <td width="63" class="td_b_5_t_5 tr_line_b"><div align="center">이름</div></td>
            <td class="td_b_5_t_5 tr_line_b"><input name="name" type="text" class="online" id="name" style="width:200px;"></td>
          </tr>
    <tr>
            <td width="63" class="td_b_5_t_5 tr_line_b"><div align="center">연락처</div></td>
            <td class="td_b_5_t_5 tr_line_b"><input name="tel" type="text" class="online" id="tel" style="width:200px;">
              <span class="td_11px">예)032-123-1234, 011-123-1234 </span></td>
          </tr>
          <tr>
            <td width="63" class="td_b_5_t_5 tr_line_b"><div align="center">메일주소</div></td>
            <td class="td_b_5_t_5 tr_line_b"><input name="mail" type="text" class="online" id="mail" style="width:308px;"></td>
          </tr>         
          <tr>
            <td width="63" class="td_b_5_t_5 tr_line_b"><div align="center">파일첨부</div></td>
            <td class="td_b_5_t_5 tr_line_b"><input name="file" type="file" class="online" id="file"  style="width:400px;"></td>
          </tr>
          <tr>
            <td width="63" class="td_b_5_t_5 tr_line_b"><div align="center">내용</div></td>
            <td class="td_b_5_t_5 tr_line_b"><textarea name="con" rows="20" class="online" id="con" style="width:450px;"></textarea></td>
          </tr>
          <tr align="right" valign="bottom">
            <td height="35" colspan="2"><input type="image" name="Submit" value="전송" src="../images/btn_ok.gif" width="88" height="25" onClick="return check();"> <input type="image" name="cancel" value="취소" src="../images/btn_cancel.gif" width="88" height="25" onClick="document.ask.reset();"></td>
            </tr>
        </table>
        </form>

 

sub03_04_ok.php 파일-------------------------------------------------------

<?
function url_forword($url){
 echo ("<meta http-equiv=refresh content=\"0;url=$url\">");
}

function er_msg($str) {
    echo("
  <script>
  window.alert('$str');
  history.go(-1);
  </script>
  ");
    exit;
}

// 메일보내기(해더포함)
function fnSend($to,$subject,$bodytext,$from){
 $to=trim($to);
 $subject=chop($subject);
 $mailhead="X-Mailer: jusun-mail v0.1\n";
 $mailhead.="From:$from\n";
 $mailhead.="Reply-To:$from\n";
 $mailhead.="Return-Path: $from\n";
 $mailhead.="Content-Type: text/html \n";
 mail($to,$subject,$bodytext,$mailhead);
}

$bodytext="<table width=\"519\" border=\"1\"  borderColor=\"#dfdfdf\" style=\"BORDER-COLLAPSE:collapse\"  align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
          <tr>
            <td width=\"84\" bgcolor=\"#E0F8F3\" style=\"padding:7 7 7 7;\"><div align=\"center\">이름</div></td>
            <td width=\"437\" style=\"padding:7 7 7 7;\">$name</td>
          </tr>
    <tr>
            <td width=\"84\" bgcolor=\"#E0F8F3\" style=\"padding:7 7 7 7;\"><div align=\"center\">연락처</div></td>
            <td style=\"padding:7 7 7 7;\">$tel</td>
          </tr>
          <tr>
            <td width=\"84\" bgcolor=\"#E0F8F3\" style=\"padding:7 7 7 7;\"><div align=\"center\">메일주소</div></td>
            <td style=\"padding:7 7 7 7;\">$mail</td>
          </tr>          
                 <tr>
            <td width=\"84\" bgcolor=\"#E0F8F3\" style=\"padding:7 7 7 7;\"><div align=\"center\">내용</div></td>
            <td style=\"padding:7 7 7 7;\">$con</td>
          </tr>
        </table>";

echo "$bodytext";

fnSend("메일주소","제품 및 견적문의",$bodytext,$mail);
?>

 

이 소스에 첨부파일이 첨부되게 하려면 어떻게 하나요

고수님들 부탁드립니다.



profile_image 익명 작성일 -

안녕하세요 (주)오늘과내일(http://tt.co.kr) 의 개발자입니다.

일단
sub03_04.php 에서
<form name="ask"  method="post" action="sub03_04_ok.php" enctype="multipart/form-data">
로 해주시구요..
enctype="multipart/form-data" 는 폼객체에 텍스트값이외에 파일객체도 보내겠다는 의미입니다.

그러면 이 폼의 액션값이 sub03_04_ok.php에 설정한 값들이 전송이 되겠죠..
sub03_04_ok.php 에서는 일단 받은 파일을 임의의 디렉토리에 저장합니다.

저장한 파일의 사이즈를 아는것은 관련 함수를 쓰면되고..
이때 사이즈를 2M 이하인지만 체크해서 넘으면 back 시키면 되구요..

저장한 파일을 읽어서 base64 로 인코딩합니다.
헤더에는 content-type, boundary 등을 설정해주고..
본문생성시에 인코딩한 값을 넣어줍니다.
이때 Content-Disposition, filename,Content-Transfer-Encoding 등의 값도 설정해주고요..


구현시에 가장 좋은 방법은 첨부파일이 포함된 메일 원문 메시지를 보면서
메일 메시지의 구조를 이해하는 것입니다.

구현된 관련 소스는 phpschool 에 많이 있을겁니다..

그럼 도움이 되셨길...

PHP 파일업로드시 용량제한

안녕하세요^^ php공부를 시작한 초보입니다. 파일업로드 부분을 공부하고... 현재 학습중인 프로그램에 첨부파일 용량을 3M이하로 제한하고 싶습니다....

아웃룩 메일 첨부파일 용량 질문이요

... Max allowed mail size is 20480000 bytes 아웃룩은 첨부파일 용량제한이 있나요? 아니면... Max allowed mail size is 20480000 bytes 위 적힌 것처럼 최대 허용 용량2M 라고...

제로보드 자료실 첨부파일 용량 확장

... 정도로 제한되어 있습니다. 1GB까지 확장하실려면 서버 호스팅을 하셔야 될... 가능한 용량 확인 방법은 아래의 내용이 들어있는 php 파일을 만들어서 자신의...

폼메일

제가 php를 이용하여 폼메일프로그램사용중인데. 그곳에 파일첨부기능을 5개정도 달아서 하나당 업로드용량제한 5M~3M 정도 하고싶거든요?...