知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

php批量上传图片并把图片名放入数据库

发布时间:2015-05-27 19:21:32作者:知识屋

前几天工作中要做这样一个功能,有八百多个系统 生成的会员;给这八百多个系统会员上传图片;然后把图片名放入数据库。

第一步:

第一步肯定是首先把图片上传到对应的图片目录下,直接用框架中已经有的上传类:

set_ext(array('zip'));                    $path='目录名';                    if ( ! Io::mkdir($path)) // 创建目录                    {                        throw new Exception("无法创建文件上传目录:$path");                    }                    $upload->set_path($path);                    if(!$upload->is_allow_ext($_FILES['files']['name']))                    {                        $this->show_message('必须zip格式数据', '0', NULL, TRUE);                    }                    $result=$upload->save($_FILES['files']);                    $archive = new Archive_Zip();                    $archive->set_target($path)->decompress($result['file']);                    unlink($result['file']);//删除使用后的zip;                $this->show_message('导入成功', '1',  array(array('text'=>'返回导入页面','href'=>'***跳转的链接地址***')),TRUE);                }catch(Exception $e){                    $this->show_message('图片导入失败', '0', NULL, TRUE);                }            }?>

第二步:

图片上传完成后,就应该把目录下所有的系统会员图片名称取出来,那就得用遍历了。想想也不用那么麻烦了,php自带函数glob();

glob() 函数返回匹配指定模式的文件名或目录。

该函数返回一个包含有匹配文件 / 目录的数组。如果出错返回 false。



循环过程中因为我只想得到图片名称,所以我把前面的目录替换为空。



第三步:

列出所有的图片后就该把图片文件名插入数据库了。

写个循环就可以了啊。

首先,用SELECT。。。。。。。。查出系统会员,然后计算出系统会员的个数,

execute()			->as_array();?>


然后再循环插入数据库:

 $files[$i],								);								DB::update('会员表')									->set($data)									->where('系统会员ID', '=', $member[$i]['系统会员ID'])									->execute();											}?>


OK。就这样就搞定了。

(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜