Thinkphp3.2.x 多图上传几个注意点

admin9年前程序心得1572

1、<form enctype="multipart/form-data">

2、<form enctype="multipart/form-data">

3、<input type="file" name="upload_pic[]" multiple>

4、$upload->upload(array($_FILES['upload_pic'])); 或 $upload->upload($_FILES); 否则会出现“非法上传对象”

5、上传配置 $config=array('saveName'   =>    array('uniqid','')); 否则会引起重名覆盖

6.可以选择把上传数组转换为单个文件状态,然后进行单个判断上传

if ($_FILES['file']['name']!=''){
                    $covers=$_FILES['cover'];
                    foreach ($covers as $key=>$val){
                    foreach ($val as $m=>$n){
                    $cover[$m][$key]=$n;
                    }
                    }
                    foreach ($cover as $k=>$v){
                    $con['md5']  = md5_file($v['tmp_name']);
                    $con['sha1'] = sha1_file($v['tmp_name']);
                    $con['size'] = $v['size'];
                    $check = D('PublicUpload')->where($con)->find();
                    if (empty($check)){
                    $upload=new \Think\Upload();
                   $info=$upload->upload(array($v));
                   $info=$info[0];
                   
                   $upload_data['type'] = $info["type"];
                   $upload_data['name'] = $info["name"];
                   $upload_data['path'] = '/Uploads/' . $info['savepath'] . $info['savename'];
                   $upload_data['url'] = $info["url"] ? : '';
                   $upload_data['ext'] = $info["ext"];
                   $upload_data['size'] = $info["size"];
                   $upload_data['md5']  = $info['md5'];
                   $upload_data['sha1']  = $info['sha1'];
                   $upload_data['location']  = 'Local';
                   $result = D('PublicUpload')->create($upload_data);
                   $result = D('PublicUpload')->add($result);
                   $c[]=$upload_data['path'];
                    }else{
                    $c[]=$check['path'];
                    }
                    }
                    $_POST['cover']=implode(';',$c);
                    }


分享到:

相关文章

MySQL获得当前日期时间\时间戳函数

MySQL获得当前日期时间\时间戳函数 1.1 获得当前日期+时间(date + time)函数:now()mysql> select now();+———————+| now() |...

php解析crontab时间格式

crontab 时间格式:配置说明“* * * * * *”分 时 日 月 周“0 3 * * * *”数字精确配置, 星号为任意.(每天凌晨3点整)“15,30 3 * * *”逗号表示枚举 (每天...

使用FastClick消除IOS点击延时提高程序的运行效率

FastClick是一个非常方便的库,在移动浏览器上发生介于轻敲及点击之间的指令时,能够让你摆脱300毫秒的延迟。FastClick可以让你的应用程序更加灵敏迅捷。支持各种移动浏览器,比如Safari...

element table 表格添加行,删除行记录

  <el-table             &n...

卸载阿里ECS云盾客户端

wget http://update.aegis.aliyun.com/download/uninstall.shchmod +x uninstall.shsh uninstall.sh...

MySQL 多行数据合并 GROUP_CONCAT

MySQL 多行数据合并 GROUP_CONCAT

表结构及数据DROP TABLE IF EXISTS `course`;CREATE TABLE `course` (`name` varchar(255) CHARACTER SET utf8 CO...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。