2016-12-03 41 views
0

我正在爲一個項目製作社交媒體網站。我有一個PHP函數,允許用戶上傳一個圖像到一個帖子,並在函數內部是一個HTML表單,讓他們選擇一個表單。HTML文件輸入不能在PHP中工作

echo "<form method='post' enctype='multipart/form-data'>"; 
      echo "<input type='file' name='myFile'/>"; 
      echo "<label for='myFile' id='fileLabel'>File input</label>"; 
      echo "<input type='submit' name='submitFileForm' value='Upload' />"; 
echo "</form>"; 

當我處理這個代碼的形式和print_r($_FILES)是空的,但如果我echo $_POST['myFile']它顯示了正確的文件名。

if (isset($_POST['submitFileForm'])) { 

print_r($_FILES); 
$my_folder = "img/"; 

if (move_uploaded_file($_FILES['myFile']['tmp_name'], $my_folder . $_FILES['myFile']['name'])) { 
    echo 'Received file' . $_FILES['myFile']['name'] . ' with size ' . $_FILES['myFile']['size']; 
} else { 
    echo 'Upload failed!'; 

    var_dump($_FILES['myFile']['error']); 
} 
} 

感謝您的幫助,我一直試圖在過去的2個小時內進行調試。此外,我忘了提及,我已經嘗試增加upload_max_filesize = 100Minput_max_size = 100M,這不是問題。

+0

你的腳本運行對我罰款。你的ini文件是否有'file_uploads = On'?你是否也看到'post_max_size'設置得更高? – Rasclatt

回答

0

你必須改變,如果條件如下

if (isset($_POST['submitFileForm'])) { 

將工作

+0

對不起,這實際上是我有,但我從這篇文章中的早期版本coppied代碼。它的更新現在 –

+0

你的腳本對我來說工作得很好 –