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

 

 

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

第一步:

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

?





1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

<!--?php

               try
{

                    $upload=new
Upload();

                    $upload--->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。

 

?





1

2

3

4

5

6

7

8

9

10

11

<!--?php

                //获取目录所有文件并将结果保存到数组    

                foreach(glob("目录名/*")
as $d){

                    $tmp=explode(‘.‘,$d);

                    $k=end($tmp);

                    //如果是文件,并且后缀名为jpg
png的文件

                    if(is_file($d)&&in_array($k,array(‘jpg‘,‘png‘))){

                          $files[]=str_replace(‘******目录名/‘,‘‘,$d);

                   }  

                }

?-->


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



第三步:

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

写个循环就可以了啊。

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

?





1

2

3

4

5

6

7

<!--?php

             //查出系统会员

            $member=
DB::query(Database::SELECT,

            "
SELECT * FROM
会员表名 WHERE 是否为系统会员 =1; ") 

            --->execute()

            ->as_array();

?>

 

然后再循环插入数据库:

?





1

2

3

4

5

6

7

8

9

10

11

12

13

<!--?php

                for($i=0;$i<count($files);$i++){

                                $data
= array(

                                    ‘图片字段‘
=--> $files[$i],

                                );

                                DB::update(‘会员表‘)

                                    ->set($data)

                                    ->where(‘系统会员ID‘,
‘=‘, $member[$i][‘系统会员ID‘])

                                    ->execute();

                             

 

                }

?>

 

OK。就这样就搞定了。

 

php批量上传图片并把图片名放入数据库,布布扣,bubuko.com

时间: 2024-12-11 16:56:49

php批量上传图片并把图片名放入数据库的相关文章

怎么批量建立用户和将用户放入用户组

方案如下 HT公司准备部署文件服务器,实现严格的权限管理.让用户只能访问自己的文件.公司一共3个部门15名员工,要求创建这15个账号,然后按部门分类管理. 部门 中文名 英文名 Manager 凯文 Kevin Information Department (信息部) 田田 Andrew 麦麦 Michael 小刚 Ethan 麦兜 Mike 大卫 David Financial Department (财务部) 克克 Noah 文文 Emily 小迪 Eadison Sales Departm

python 抓取电影天堂电影信息放入数据库

# coding:utf-8 import requests from bs4 import BeautifulSoup from multiprocessing import Pool import urllib2 import re import json import chardet import pymysql # url = "http://dytt8.net/" # page = requests.get(url).content # page_html = Beautif

python 抓取&quot;一个&quot;网站文章信息放入数据库

# coding:utf-8 import requests from bs4 import BeautifulSoup import json import time import datetime import pymysql import sys reload(sys) sys.setdefaultencoding('utf-8') # 获取文章内容方法 def getartinfo( url ): page = requests.get(url).content soup = Beaut

使用ivx实现批量上传图片的经验总结

通常我们使用上传图片都是上传单张,在ivx中其实也提供了批量上传图片的功能,今天就讲一下批量上传图片的具体操作.1.图片列表首先需要用一个对象数组存储批量上传的图片,然后用for容器循环创建一个图片列表.每个图片后面都有一个圆框关闭的图标,可以将当前数据从对象数组中删除,当然这里的删除只是从前台的对象数组中删除.2批量上传图片然后就是图片上传的部分,这里使用的是文件接口组件读取多张本地图片的动作,我们可以在该动作的回调中获取到参数"读取结果",它包含图片列表和读取失败原因两个部分,如果

Android 批量上传图片进度回调

之前写过一个对图片进行高保真压缩的文章,把图片压缩的这么小当然是为了上传的,这次就把图片批量上传的代码也一起贴出来,这个方法是基于xUtils的Http模块 首先这个上传过程要满足一下特性 1.开启多个线程进行图片的批量同时上传 2.每张图片的上传进度都可以获取到,并且显示在界面上 3.如果有一张图片上传失败就宣布上传过程失败,然后等待用户再次发起同样的上传命令 4.所有图片均上传成功后有一个完毕的回调 5.每张图片上传完毕后要从上传服务器得到一个json记录上传图片的id 6.对于已经上传过的

ASP.net(C#)批量上传图片(完整版)

摘自:http://www.biye5u.com/article/netsite/ASPNET/2010/1996.html 这篇关于ASP.Net批量上传图片的文章写得非常好,偶尔在网上看到想转载到这里,却费劲了周折.为了更新这篇文章,我用了近半个小时,网上的转载都残缺不全,希望大家有用的参考一下,作者写的非常好. 因本网站上传图片的需要,参考很多成熟的经验,在ASP.net平台上使用C#语言,做了这一自动批量上传图片的.ASPX文件,并经调试成功,在本网站上使用,现发出来供大家参考,也希望高

ecshop编辑器FCKeditor修改成KindEditor编辑批量上传图片

ecshop一直使用的编辑器是fck,这个不用多说,相信很多朋友用的很悲剧吧,特别是图片不能批量上传图片. 今天小编就分享一下怎么换掉fck,放上实用的kindeditor,最新ecshop版本的哦.方法如下: 1.官方网站下载最新版kindeditor 现在最先版本的是:kindeditor4.1.4,官方网址:http://www.kindsoft.net 2.上传解压 上传下载的压缩文件到你的网站include目录下,解压kindeditor4.1.4,将其文件夹名称改为:kindedit

.Net ajax异步批量上传图片

利用iframe实现ajax异步批量上传图片,WebForm1页面 <form action="WebForm1.aspx" target="dynamic_creation_upload_iframe" method="post" enctype="multipart/form-data"> <input type="file" name="upload1" />

批量上传图片(jQuery-File-Upload使用)

jQuery-File-Upload jQuery-File-Upload是一个jquery下的ajax文件上传插件,支持批量上传,github地址:https://github.com/blueimp/jQuery-File-Upload. 官方有个基本的使用教程,如果没有特别需求可以参考这个简单使用 https://github.com/blueimp/jQuery-File-Upload/wiki/Basic-plugin 官方的demo地址,感兴趣可以对照源码分析下,demo分别对应源码