多文件:name參數必須帶[]結尾!
HTML
<input type="file" name="file_upload[]" hidden id="file_upload" accept="image/*" multiple>
JS
$('body').on('change','#file_upload',function () {
if($(this).val()!==''){
var form_data = new FormData($('#form_file_upload')[0]);
$.ajaxFileUpload({
fileElementId:'file_upload',
url:'/hb/caipubuzhou/upload/',
type:'post',
dataType:'json',
secureuri: false,
timeout: 3000,
data:{
'_csrf':'<?=$csrf?>',
'form_data':form_data,
},
success:function(msg){
if(msg.dir_state!==false){
if(v_buzhou.rows_buzhou[0]['src']===''){
v_buzhou.rows_buzhou.splice(0,1);
}
for(i=0;i<msg['state'].length;i++){
if(msg['state'][i]===true){
v_buzhou.rows_buzhou.push({'title':'','src':msg['address'][i],'type':'add','pkid':'0'});
}
}
}else{
layer.alert('創建地址失敗!');
}
if(v_buzhou.rows_buzhou.length>=3){
auto_height();
}
},
error:function(){
}
});
document.getElementById('file_upload').value='';
}
})
PHP
public function create_dir($type)
{
$msg=[];
$msg['state']=false;
$dir=$_SERVER['DOCUMENT_ROOT'];
$dir_xiandui='';
switch ($type) {
case 'hb':
$dir_xiandui='/upload/hb/'.date('Y/').date('m/').date('d/');
break;
default:
$dir_xiandui='';
break;
}
if(!empty($dir_xiandui)){
$dir=$dir.$dir_xiandui;
if(!is_dir($dir)){
mkdir($dir,'0777',true);
}
if(is_dir($dir)){
$msg['state'] = true;
$msg['path_juedui']=$dir;
$msg['path_xiandui']=$dir_xiandui;
}else{
$msg['msg']='創建目錄失敗!';
}
}else{
$msg['msg']='儲存地址不存在!';
}
return $msg;
}
public function upload_file($file_type=0,$type)
{
$msg=[];
$msg_dir['dir'] = $this->create_dir($type);
if($msg_dir['dir']['state']!==false){
$msg['dir_state']=true;
$file_rule=[];
for($i=0;$i<count($_FILES['file_upload']['error']);$i++){
$file_path = $msg_dir['dir']['path_juedui'];
if(isset($file_path)){
switch ($file_type) {
case 'image':
$file_rule=['image/jpg','image/jpeg','image/gif','image/png'];
break;
case 'xls':
$file_rule=['application/vnd.ms-excel','application/wps-office.xls','image/png'];
default:
break;
}
$file_name_new=time().rand(100,999).'.'.str_replace('image/','',$_FILES['file_upload']['type'][$i]);
if(in_array($_FILES['file_upload']['type'][$i],$file_rule)){
if($_FILES['file_upload']['size'][$i]>0&&$_FILES['file_upload']['size'][$i]<(6000*1024))
{
if(move_uploaded_file($_FILES['file_upload']['tmp_name'][$i],''.$file_path.$file_name_new))
{
$msg['address'][]=$msg_dir['dir']['path_xiandui'].$file_name_new;
$msg['biaoti'][]=$file_name_new;
$msg['state'][]=true;
}
else
{
$msg['msg'][]='文件上傳失敗!'.$file_path.$file_name_new;
}
}
else
{
$msg['msg'][]='文件大小不合法!';
}
}else{
$msg['msg'][]='文件類型不支持';
}
}else{
$msg['msg'][]='保存路徑不存在!';
}
}
}else{
$msg['dir_msg']=$msg_dir['dir']['msg'];
$msg['dir_state']=false;
}
return $msg;
}