我需要將每個請求的多個文件從我的Android應用程序上傳到apache Web服務器。我在Windows 10電腦上使用XAMPP設置網絡服務器。將通過POST Http請求(okhttp 3.3.1)上傳的多個文件移動到另一個目錄
當我上傳單個文件時,一切都按預期工作。 但是,當發佈多個失敗時,它們出現在C:\ xampp \ tmp文件夾中,但不會移動。
這是$ _FILES數組看起來像
<?php $_FILES = array (
'uploaded_file1' =>
array (
'name' => 'data1.csv',
'type' => 'text/csv',
'tmp_name' => 'C:\\xampp\\tmp\\phpA9A6.tmp',
'error' => 0,
'size' => 7991,
),
'uploaded_file2' =>
array (
'name' => 'data2.csv',
'type' => 'text/csv',
'tmp_name' => 'C:\\xampp\\tmp\\phpA9A7.tmp',
'error' => 0,
'size' => 24906727,
),
'uploaded_file3' =>
array (
'name' => 'data3.csv',
'type' => 'text/csv',
'tmp_name' => 'C:\\xampp\\tmp\\phpB244.tmp',
'error' => 0,
'size' => 12342379,
),
);
這是我想向他們
<?php
$move = "images/";
foreach ($_FILES['uploaded_file']['tmp_name'] as $key => $value)
{
$tmp_name = $_FILES['uploaded_file']['tmp_name'][$key];
$name = $move.basename($_FILES['uploaded_file']['name'][$key]);
move_uploaded_file($tmp_name, $name);
}
?>
移動腳本,我認爲這與的名稱做上傳的文件,但是當我嘗試設置每個文件的名稱uploaded_file,在$ _FILES數組類似
<?php $_FILES = array (
'uploaded_file' =>
array (
'name' => 'data3.csv',
'type' => 'text/csv',
'tmp_name' => 'C:\\xampp\\tmp\\phpEF74.tmp',
'error' => 0,
'size' => 12342379,
),
);
我對HTTP和PHP沒有真正的經驗,所以這可能是一個微不足道的問題,但即使有幾個不同版本的PHP腳本,我也無法弄清楚。任何幫助是極大的讚賞。
編輯:目標目錄C:\ xampp \ htdocs \ images存在,我調整了最大上傳和POST文件大小,但正如我所說的只有移動文件是問題。