簡體   English   中英

帶郵件附件的空文件-PHP

[英]Empty File with Mail attachment - PHP

我正在使用以下腳本通過郵件發送附件。 它發送郵件,但附件為空。 我已經遍歷了腳本,但似乎找不到錯誤的出處。

Php:

    $file_name = $_FILES['attachment']['name'];
    $temp_name = $_FILES['attachment']['tmp_name'];
    $file_type = $_FILES['attachment']['type'];

    // get file extension

    $base = basename($file_name);
    $extension = substr($base, strlen($base)-4, strlen($base));

    // allowed file types

    $allowed_extensions = array(".doc", ".docx", ".pdf");

    $from = $_POST['email'];
    $to = "info@mywebsite.com";
    $subject = "CV Upload";
    $message = "My CV";

    $file_name = $temp_name;
    $content = chunk_split(base64_encode(file_get_contents($file)));
    $uid = md5(uniqid(time()));

    $header = "From: ".$from."\r\n";
    $header .= "Reply-To: ".$replyto."\r\n";
    $header .= "MIME-Version: 1.0\r\n";

    $header .= "Content-Type: multipart/mixed; boundary=\"".$uid."\"\r\n\r\n";
    $header .= "This is a multi-part message in MIME format.\r\n";

    $header .= "--".$uid."\r\n";
    $header .= "Content-type:text/plain; charset-iso-8859-1\r\n";
    $header .= "Content-Transfer-Encoding: 7bit\r\n\r\n";
    $header .= $message."\r\n\r\n";

    $header .= "--".$uid."\r\n";
    $header .= "Content-type: ".$file_type."; name=\"".$file_name."\"\r\n";
    $header .= "Content-Transfer-Encoding: base64\r\n";
    $header .= "Content-Disposition: attachment; filename=\"".$file_name."\"\r\n\r\n";
    $header .= $content."\r\n\r\n";

檢查你的代碼

$content = chunk_split(base64_encode(file_get_contents($file)));

從技術上講, $file不存在。 使用$file_name

$content = chunk_split(base64_encode(file_get_contents($file_name)));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM