0
得到了一個腳本,我用了幾次,使用move_uploaded_file
。但我不明白爲什麼它不以任何方式迴應,沒有錯誤報告,什麼都沒有。Filehandling,move_uploaded_file給我沒有迴應
<form>
使用method="post"
,target="upload"
這是一個action="file.php"
響應$_FILES
- 正確的加密類型
- Filerights被設置爲777
- 上傳文件夾 「上傳」 的存在
print_r($_FILES['file'])
給我:
Array
(
[name] => 1392930853.png
[type] => image/png
[tmp_name] => /tmp/php0rZdBf
[error] => 0
[size] => 611
)
下面的代碼說明了我的劇本,我已經想通了是與move_uploaded_file
最後一行是我的問題的原因,因爲它沒有任何反應。正如我上面寫的,沒有錯誤,沒有任何東西。
引擎收錄腳本:http://pastebin.com/49m9Siqi
得到一個線索,這可能是這個原因嗎?
$destination_path = getcwd().'/uploads/';
//echo $destination_path;
// File handling
$counted = count($_FILES['file']['name']);
$counted = $counted-1;
for ($i=0; $i<=$counted; $i++) {
if ($_FILES['file']['error'][$i] == UPLOAD_ERR_OK) {
$md5file = rand() . rand() . md5($_FILES['file']['name'][$i]) . rand() . rand();
if(move_uploaded_file($_FILES['file']['tmp_name'][$i], $destination_path . $md5file . "." . basename($_FILES['file']['type'][$i]))) { echo 'THIS WILL NOT BE ECHOED OUT ON THE PAGE'; }}}
的第一步將是你的代碼分解成多個語句,並檢查每個值一個接一個。正如目前所寫,嘗試和調試這將是一場噩夢。 – 2014-11-03 16:38:35
在某些系統上,文件夾權限777不起作用,至少在我的一個系統上。嘗試755,這實際上更安全。所以,這可能是一個促成因素。你甚至可能想要把'$ destination_path = getcwd()。'/ uploads /';'改成'$ destination_path ='uploads /';'如果從服務器的根目錄運行你的腳本。您可能需要稍微玩一下,例如'$ destination_path ='../ uploads /';',具體取決於您所處的子文件夾的數量。 – 2014-11-03 16:42:14
嘗試不使用iframe,查看是否獲得相同的結果結果。 – 2014-11-03 16:48:02