2015-04-15 2 views
0

Я пытаюсь создать простую форму контакта с PHP, используя PHPMailer (потому что я также хочу прикреплять файлы через форму). И как-то то, что должно быть действительно просто, могло дать мне головные боли.

Вот несколько строк кода:

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

Моя главная проблема в том, что я прикрепить файл, заполните все поля, заполните форму. Я получаю электронную почту, кроме прилагаемого файла. Я отследил и узнал, что если я повторю $ var var, он отобразит первую букву файла. Пример: если файл назван test.jpg, echoing $ file приведет к t.

Я понятия не имею, что это происходит, если судить о том, что не слишком много строк кода и ничего, что изменит имя файла ..

Надежда кто-то может помочь мне.

+1

Это опечатка '$ _POST' должен быть' $ _FILES'. Редактировать: о, отсутствует цитата, как указано в ответе ниже. Все еще не по теме. Это проблема отладки. –

+0

Попробуйте начать с [пример с PHPMailer] (https://github.com/PHPMailer/PHPMailer/blob/master/examples/send_file_upload.phps). – Synchro

ответ

2

" отсутствует в ENCTYPE и использовать $ _FILES вместо $ _POST

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

И

$file = $_FILES['file']['tmp_name']; 
Смежные вопросы