求夠一個PHP實現多檔案上傳的例子,直接貼代碼,謝謝。
回複討論(解決方案)
怎麼沒有人。。。。
百度swfupload,下載個執行個體研究下吧
多檔案上傳不是幾句代碼就說清楚的。
會單檔案上傳不?會的話多檔案是一樣的道理。只不過表單控制項命名為數組,php處理數組而已。
$_FILES["file"] 怎麼接收數組的檔案,我用
foreach ($_FILES["file"] as $item)
{
$s=$s.",".$item;
}
只能接收一個檔案
你的html代碼是什嗎?
if($_FILES['file']['size'] >0){
if ( $_FILES["file"]["error"] > 0){
$msg= "附件上傳錯誤: " . $_FILES["file"]["error"];
}else{
//if (file_exists("upload/".$_FILES["file"]["name"])){
// echo $msg =$_FILES["file"]["name"]." 附件已經存在! ";
//}else{
$yc = $_POST['yc'];
$yt = $_POST['yt'];
$type = $_POST['type'];
$newFileName=str_replace(".","_".time().".",$_FILES["file"]["name"]);
$path="upload/" . $newFileName;
move_uploaded_file($_FILES["file"]["tmp_name"],$path);
$sql="insert into A004(c02,c03,c04,c05,c06,c07,c08,c09,c10) values ('".$id."','".$newFileName."','".$path."','".$yc[0]."','". $yt[0]."','".$type[0]."','0','".$_SESSION['LOGIN_ID']."','".get_time()."') ";
$msg=$DB->Update($sql,"[10016]提交資料時失敗,請稍後再試,或與技術員聯絡!");
//}
}
}
jQuery動態添加input type=file檔案上傳域
for($i=0; $i //這部分是你的恕我不一一抄錄,不過加了點東西
$newFileName=str_replace(".","_".time().".",$_FILES["file"]["name"] [$i]);
$path="upload/" . $newFileName;
move_uploaded_file($_FILES["file"]["tmp_name"] [$i],$path);
}
不過 time() 似乎不夠了,要 microtime(1) 才基本夠
試試uploadify
稍作修改就ok了。
https://github.com/valums/file-uploader
推薦
for($i=0; $i //這部分是你的恕我不一一抄錄,不過加了點東西
$newFileName=str_replace(".","_".time().".",$_FILES["file"]["name"] [$i]);
$path="upload/" . $newFileName;
move_uploaded_file($_FILES["file"]["tmp_name"] [$i],$path);
}
不過 time() 似乎不夠了,要 microtime(1) 才基本夠
我就想知道後台怎麼接收多檔案
樣本的代碼就是
你的上傳控制項是
所以 $_FILES["file"][xxx] 都是數組 (xxx = tmp_name,name,error,type,size)
逐個處理就是了,當然只有 error 等於 0 的才是被成功上傳的
樣本的代碼就是
你的上傳控制項是
所以 $_FILES["file"][xxx] 都是數組 (xxx = tmp_name,name,error,type,size)
逐個處理就是了,當然只有 error 等於 0 的才是被成功上傳的
foreach ($_FILES['file'] as $item)
{
//echo print_r($item);
}
怎麼這樣只得到第一個檔案啊
測試代碼
選擇兩個檔案後
提交後 $_FILES 數組
Array
(
[file] => Array
(
[name] => Array
(
[0] => i.jpg
[1] => Ico.zip
[2] =>
)
[type] => Array
(
[0] => image/pjpeg
[1] => application/x-zip-compressed
[2] =>
)
[tmp_name] => Array
(
[0] => C:\Documents and Settings\Administrator\Local Settings\Temp\php188.tmp
[1] => C:\Documents and Settings\Administrator\Local Settings\Temp\php189.tmp
[2] =>
)
[error] => Array
(
[0] => 0
[1] => 0
[2] => 4
)
[size] => Array
(
[0] => 7198
[1] => 121062
[2] => 0
)
)
)
自己去看吧