解压上传的文本文件压缩包并将解压后的文本文件内容插入到数据库

$content = file_get_contents($_FILES["file"]["tmp_name"]);
		$ret->content = $content;
		if (file_exists("/var/www/api/uploads//" . $_FILES["file"]["name"]))
		{
			echo $_FILES["file"]["name"] . " already exists. ";
		}
		else
		{
			move_uploaded_file($_FILES["file"]["tmp_name"],"/var/www/api/uploads/" . $_FILES["file"]["name"]);
			echo "Upload file Stored in: " . "/var/www/api/uploads/" . $_FILES["file"]["name"];
		}

		$zip = new ZipArchive;
		$filename = $_FILES["file"]["name"];
		$path = "/var/www/api/uploads";
		if(!file_exists($path."/".$filename)){
			die("The zip file $filename not exist!");
		}
		//打开压缩包
		$resource = $zip->open($path."/".$filename);

		if ($resource === TRUE) {
			echo "Unzip successed!";
			//解压缩到服务器上传目录底下
			$zip->extractTo(‘/var/www/api/uploads‘);
			$array1 = get_object_vars($zip);
			$bigarr = array();
			for ($i=0;$i<$array1[‘numFiles‘];$i++){
				//根据压缩内的文件名称,获取该文件的文本流
				$stream = $zip->getStream($zip->getNameIndex($i));
				$str = stream_get_contents($stream);
				$str = str_replace(array("\r\n", "\r", "\n"), ",", $str);
				$arr = explode(",",$str);
				$bigarr = array_merge($bigarr, $arr);
				unset($str);
			}
			$zip->close();

			echo count($bigarr);
			$device = new device();
			$device->add($bigarr, ‘2015-12-21‘, ‘2015-12-21‘, ‘2000‘);
		} else {
			echo ‘Unzip failure!, code:‘ . $resource;
		}
		global $pdo;
		$sql = ‘INSERT INTO device VALUES‘;
		$arr = array_fill(0, count($data), "(?, $listing_date, $create_time, $create_uid, 0, 0)");
		$sql .= join(‘,‘, $arr);

		$stmt = $pdo->prepare($sql);
		$stmt->execute($data);

拼接SQL语句进行一次性插入:

时间: 2024-10-03 22:29:45

解压上传的文本文件压缩包并将解压后的文本文件内容插入到数据库的相关文章

Java解压上传zip或rar文件,并解压遍历文件中的html的路径

1.本文只提供了一个功能的代码 public String addFreeMarker() throws Exception { HttpSession session = request.getSession(); User user = (User) session.getAttribute(Constant.USER_SESSION_KEY); String realName = user.getRealName(); System.out.println("--------获取登录用户信

[Plugin] JQuery.uploadify上传文件插件的使用详解For ASP.NET

URL:http://www.cnblogs.com/xiaopin/archive/2010/01/21/1653523.html 今天下午整理文件上传的例子,感觉收集到的例子都很不人性话,后来找到一个还可以的,本来想改成类似于腾讯QQ相册那种方式,仔细看了一下是Flash的, 而且那个极速上传插件也不知道用什么做的?问了一下,说是什么cgi. 搞得一头雾水! 后来朋友推荐了一个这个叫uploadify的上传插件,似乎挺好,就到官方下了个示例运行,感觉挺好,自己再稍加美化一下就OK 了..!

导出EXCEL上传 服务器 添加压缩包,获取文件 大小

package net.joystart.excelTask; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.text.DateFormat; import ja

上传本地代码到gitHub过程详解

1.注册github账号. 2.创建个人的github仓库,如图, 或者也可以进入个人中心去创建, 还可以直接点击右上角的“”+“”添加, 3.创建自己的Repository,如图: 4.新建完成后会进入类似于下面的页面,复制创建仓库的地址,如图: 5.打开本地git命令窗口或者cmd命令窗口,cd到你存放项目的根目录下,并执行一下命令行: git clone 仓库地址(上面一步复制出来的地址),如下图,是我复制我创建的仓库地址: 6.打开项目文件夹,会发现刚才在github里面新建的文件都存在

php.ini修改php上传文件大小限制的方法详解

打开php.ini,首先找到file_uploads = on ;是否允许通过HTTP上传文件的开关.默认为ON即是开upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹upload_max_filesize = 8m ;望文生意,即允许上传文件大小的最大值.默认为2Mpost_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值.默认为8M一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,

php上传文件大小限制的方法详解

打开php.ini,首先找到file_uploads = on ;是否允许通过HTTP上传文件的开关.默认为ON即是开upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹upload_max_filesize = 8m ;望文生意,即允许上传文件大小的最大值.默认为2Mpost_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值.默认为8M一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,

phpcms后台批量上传添加图片文章方法详解(一)

注:以下所有代码中,红色部分为增加部分. 一.在后台增加批量添加按钮 打开“phpcms\modules\content\templates\content_list.tpl.php”文件 搜索“$category['catname']));?> ”在这句话的后天的添加: a  echo="" href=":;" m="content&c=content&a=addall&menuid=&catid=&pc_h

upload-labs-master文件上传靶场第七关详解

一.前言 upload-labs-master是文件上传靶场,里面目前总共有19关,github地址https://github.com/c0ny1/upload-labs,今天要说的是这个靶场的第七关的解法 二.正文 先看下第七关长什么样 和其他几关一样,咱们先直接看下源码吧 $is_upload = false; $msg = null; if (isset($_POST['submit'])) { if (file_exists(UPLOAD_PATH)) { $deny_ext = ar

详解文件上传漏洞

介绍 在现代互联网网站中,上传文件基本上是一种常见的功能,允许用户上传一些图片,视频以及其他类型的文件.如果网站出现文件上传漏洞,那么恶意用户就可以将可执行脚本程序上传到web服务器中,获得网站权限,进一步 gongji web服务器.当上传文件时,如果服务端未对客户端上传的文件进行严格的验证和过滤,就容易造成文件上传漏洞,即上传任意文件(包括脚本文件php,jsp,asp,aspx等格式)恶意用户可以利用上传的webshell控制整个网站甚至控制服务器 绕过 js检测绕过js检测绕过漏洞常见于