php 메일에 첨부파일 붙여 보내는 중에 질문하나 드려봅니다.

php 메일에 첨부파일 붙여 보내는 중에 질문하나 드려봅니다.

QA

php 메일에 첨부파일 붙여 보내는 중에 질문하나 드려봅니다.

본문

<form action="sendmail.php" method="post" name="forms" id="forms" enctype="multipart/form-data">

  <br>

  <table width="575" border="0" cellspacing="4">

    <tr>

      <td width="200" valign="bottom"><div align="right" class="style3 style4"><span class="style6">*</span> <span class="style9 style7">성 명 (Name)</span></div></td>

      <td width="354">

      <input name="name" type="text" class="input" id="name" size="30">

      </td>

    </tr>

    <tr>

      <td valign="bottom"><div align="right" class="style5"><span class="style6">*</span> <span class="style7">메 일 (E-mail)</span> </div>        <div align="right" class="style5"> </div></td>

      <td>

      <input name="e_mail" type="text" id="e_mail" size="58">

      </td>

    </tr>

    <tr>

      <td valign="bottom"><div align="right" class="style5"><span class="style6">*</span> <span class="style7">제 목 (Subject)</span> </div></td>

      <td>

      <input name="subject" type="text" id="subject" size="58">

      </td>

    </tr>

    <tr>

      <td valign="top"><div align="right" class="style5">

          <p><br>

              <span class="style6">*</span> <span class="style7">내 용 (Contents)</span> </p>

      </div></td>

      <td>

      <textarea name="contents" cols="57" rows="8" id="contents"></textarea>

       </td>

    </tr>

    <tr>

      <td valign="bottom"><div align="right"><span class="style6">*</span> <span class="style7 style3">첨부파일 (File)</span></div></td>

      <td>

      <input name="upfile" type="file" size="40">

      </td>

    </tr>

    <tr align="right">

      <td colspan="2"><div align="right"></div>

         <input type="submit" name="send" value="편지보내기">

    </tr>

  </table>

</form>

 

 

 

 

=====  PHP파일은 아래와 같습니다. =====

 

 

<?

$headers .= "From :$name<$e_mail>\r\n";

$heasers .= "X-Mailer:PHP MAILER\r\n";

 

if($upfile && $upfile_size)

{

        $filename=basename($upfile_name);

        $result=fopen($upfile,"r");

        $file=fread($result,$upfile_size);

        fclose($result);

 

        $upfile_type = "application/octet-stream";

        

        $boundary = "--------". uniqid("part");

        $headers .= "MIME-Version: 1.0 \r\n";

        $headers .= "Content-Type: multipart/mixed;        boundary=\"$boundary\"";

        

        $body .= "This is a multi-part message in MIME format.\r\n\r\n";

        $body .= "--$boundary\r\n";

        $body .= "Content-Type: text/html; charset=euc-kr\r\n";

        $body .= "Content-Transfer-Encoding: 8bit\r\n\r\n";

        $body .= nl2br(stripslashes($contents))."\r\n\r\n";

        $body .= nl2br(stripslashes($phpworld))."\r\n\r\n";

        $body .= "--$boundary\r\n";

        

        $body .= "Content-Type: $upfile_type; name=\"$filename\"\r\n";

        $body .= "Content-Transfer-Encoding: base64\r\n\r\n";

        $body .= ereg_replace("(.{80})","\\1\r\n",base64_encode($file));

}

else

{

        $body = stripslashes($contents). "\r\n\r\n";

}

 

mail("*** 개인정보보호를 위한 이메일주소 노출방지 ***",$subject,$contents,$headers); 

 

?> 

 

 

이렇게  소스를 작성하고요 

 

sendmail.php 에서 

<?php

if($_POST){

print_r($_POST);

}else{

echo 'post변수가없습니다.';

}

?>

 

이렇게 날려보면 

Array ( [name] => 이름 [e_mail] => 이메일주소 [subject] => 제목 [contents] => 내용 [send] => 편지보내기 )

이렇게 날아오는데요.

 

왜  <input name="upfile" type="file" size="40"> 에서 파일첨부로 파일까지 넣어줬는데

sendmail 에선 파일내용을 못가져 올까요? 

이 질문에 댓글 쓰기 :

답변을 작성하시기 전에 로그인 해주세요.
전체 128
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT