2015-04-15 28 views
0

我想用PHPMailer創建一個簡單的PHP聯繫表單(因爲我也想通過表單附加文件)。不知何故,應該真的很簡單,讓我頭疼。

下面是一些代碼:

<form method="POST" action="" enctype= multipart/form-data"> 
..... 
<input type="file" name="file"> 
</form> 
..... 
$file = $_POST['file']['tmp_name']; 
echo $file; 

我的主要問題是,我附加文件,完成所有的字段,提交表單。我收到除附件以外的電子郵件。我追蹤並發現,如果我回顯$ file var,它將顯示文件的第一個字母。例如:如果文件名爲test.jpg,則回顯$ file將導致t。

我不知道這是什麼事情發生,判斷的事實,有沒有代碼,沒有什麼會改變文件名行數太多..

希望有人能幫助我。

+1

這是一個錯字'$ _POST'應該是'$ _FILES'。編輯:哦,缺少下面的答案中所述的報價。仍然是題外話題。這是一個調試問題。 –

+0

嘗試從[PHPMailer提供的示例](https://github.com/PHPMailer/PHPMailer/blob/master/examples/send_file_upload.phps)開始。 – Synchro

回答

2

"缺少加密類型和使用$ _FILES而不是$ _ POST

<form method="POST" action="" enctype= "multipart/form-data"> 
..... 
<input type="file" name="file"> 
</form> 

$file = $_FILES['file']['tmp_name'];