/**
* 导入excel
* @throws \PHPExcel_Exception
* @throws \PHPExcel_Reader_Exception
*/
public function impExcel($filename,$data){
if (!empty($_FILES)) {
$config = array(
'exts'=>array('xlsx','xls'),
'rootPath'=>"./",
'savePath'=> "Public/Uploads/$filename/",
'subName' => array('date','Ymd'),
);
$upload = new \Think\Upload($config);
if (!$info=$upload->upload()) {
$this->error($upload->getError());
} vendor("PHPExcel.PHPExcel");
$file_name = $info['excel']['savepath'].$info['excel']['savename']; //$objReader = \PHPExcel_IOFactory::createReader('Excel5'); $Excel_name = getcwd() . '/' .$file_name; //$aaa = is_readable($Excel_name); // $objPHPExcel = $objReader->load($Excel_name,$encode='utf-8');
$extension = strtolower( pathinfo($Excel_name, PATHINFO_EXTENSION) ); if ($extension =='xlsx') {
$objReader = new \PHPExcel_Reader_Excel2007();
$objPHPExcel = $objReader ->load($Excel_name);
} else if ($extension =='xls') {
$objReader = new \PHPExcel_Reader_Excel5();
$objPHPExcel = $objReader ->load($Excel_name);
} else if ($extension=='csv') {
$PHPReader = new \PHPExcel_Reader_CSV(); //默认输入字符集
$PHPReader->setInputEncoding('GBK'); //默认的分隔符
$PHPReader->setDelimiter(','); //载入文件
$objPHPExcel = $PHPReader->load($Excel_name);
} $sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow(); // 取得总行数
$highestColumn = $sheet->getHighestColumn(); // 取得总列数 for($i=2;$i<=$highestRow;$i++)
{ $data['name'] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue();
$data['tel'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
$data['zjh'] = $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
$data['sheng'] = $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
$data['shi'] = $objPHPExcel->getActiveSheet()->getCell("E".$i)->getValue();
$data['address']= $objPHPExcel->getActiveSheet()->getCell("F".$i)->getValue();
$data['money']= $objPHPExcel->getActiveSheet()->getCell("G".$i)->getValue();
$data['hk_time']= $objPHPExcel->getActiveSheet()->getCell("H".$i)->getValue();
$data['nanyi']= $objPHPExcel->getActiveSheet()->getCell("I".$i)->getValue();
$data['uid'] = $_SESSION['user']['id'];
$data['time'] = date("Y-m-d H:i:s");
M('release')->add($data);
} $this->success('导入成功!');exit();
}else
{
$this->error("请选择上传的文件");
} }
调用:
 if(IS_POST)
{
$data['reason'] = I("post.reason","","trim");
$data['type'] = I("post.type","","trim");
// $data['qixian'] = I("post.qixian","","trim");
// $data['comm'] = I("post.comm","","trim");
if(!empty($_FILES)){
$this->impExcel('batch_release',$data);
}
}

PHP 导入Excel数据 到数据库的更多相关文章

  1. 【转】 如何导入excel数据到数据库,并解决导入时间格式问题

    在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...

  2. .net导入excel数据到数据库中

    在开发过程中我们经常面临着需要将数据导出或者导入到系统中,例如一些生产管理系统,项目管理系统等等都会有这样的需求: 将excel数据到系统中思路:获取excel中每一行的数据,然后存入集合中,批量添加 ...

  3. 导入excel数据到数据库

    1.上传excel到服务器 jsp页面代码 <form action="actionname" method="post" id="form1& ...

  4. java 使用poi 导入Excel 数据到数据库

    由于我个人电脑装的Excel是2016版本的,所以这地方我使用了XSSF 方式导入 . 1先手要制定一个Excel 模板 把模板放入javaWeb工程的某一个目录下如图: 2模板建好了后,先实现模板下 ...

  5. Web服务器与数据库服务器分离 导入 Excel数据至数据库

    一般情况一般项目WEB服务器与数据库均部署在一台服务器,文件上传,数据导入在一台服务器完成.web服务器与数据库服务器分离,文件上传与数据导入将分布在两台服务器或多台服务器之间.本案例为两台服务器,具 ...

  6. java 对excel操作导入excel数据到数据库

    加入jar包jxl.jar ===================services层掉用工具类==================================== // 导入 public Lis ...

  7. 如何批量导入excel数据至数据库(MySql)--工具phpMyAdmin

    之前由于数据储存使用excel保存了所有数据,经过初步数据筛选,数据量近4000条.一条一条录入数据库显然是不可行的.以下是我所操作的步骤: 1.只保留excel的数据部分,去除第一行的具体说明 2. ...

  8. MYSQL 导入Excel数据到数据库中

    1,先把excel的数据整理整齐,如每列都要保持同样的格式:就一列一列的数据: 2,导出excel的数据为CSV格式,即把excel的数据另存为xxxx.csv;: 3,用EditPlus工具将xxx ...

  9. Winform导入Excel数据到数据库

    public partial class ImportExcel : Form { AceessHelpers accessHelper = new AceessHelpers(); public I ...

随机推荐

  1. git 常用命令 command

    git config --list //查看配置信息   git config user.name //查看用户名  git config user.email //查看用户邮箱 从远程克隆到本地仓库 ...

  2. 题解 CF611H 【New Year and Forgotten Tree】

    Solution 提供一种新思路. 首先考虑如何判断一个状态是否合法. 考虑把所有十进制长度一样的数缩成一个点. 这样的点的个数 \(\le 5\). 蒟蒻猜了一个结论:只要满足对于所有缩出来的点的子 ...

  3. AcWing 400. 太鼓达人

    大型补档计划 题目链接 神仙题.考虑转为图论模型. 若以 \(2 ^ k\) 个点,相互转化,很容易看出要求一个哈密尔顿环,显然对于 \(1000\) 规模的数据求不出来. 对于图论中环的算法,并且能 ...

  4. STL——容器(List)list 的大小操作

    ist.size(); //返回容器中元素的个数 1 #include <iostream> 2 #include <list> 3 4 using namespace std ...

  5. C# 9.0中引入的新特性init和record的使用思考

    写在前面 .NET 5.0已经发布,C# 9.0也为我们带来了许多新特性,其中最让我印象深刻的就是init和record type,很多文章已经把这两个新特性讨论的差不多了,本文不再详细讨论,而是通过 ...

  6. js上 七、表达式

    (1).什么是表达式 任何有值的内容都是表达式 一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如a=3中的3就是一个表达式,a=3整体也可以作为一个表达式. 常见表达式有如下几种: ü 原 ...

  7. JYadmin-react-antd react+antd封装的优秀后台模板集成方案("^1.0.0")

    版本:[ "JYadmin-react-antd": "^1.0.0"] 版权所有:微信公众号[微新悦] 原文链接:https://www.weixinyue. ...

  8. SQL注入练习第一天

    MySQL 相关知识 在MySQL中,把[INFORMATION_SCHEMA] 看作是一个数据库,确切说是信息数据库.其中保存着关于MySQL服务器所维护的所有其他数据库的信息.如数据库名,数据库的 ...

  9. Java篇:Docker的介绍安装 和常用命令

    文章目录 为什么 出现docker Docker的简介 容器(Container) 镜像(Image) 仓库(Repository) Docker的安装 查看容器 删除镜像 删除容器 部署应用 以my ...

  10. Java进阶:基于TCP通信的网络实时聊天室

    目录 开门见山 一.数据结构Map 二.保证线程安全 三.群聊核心方法 四.聊天室具体设计 0.用户登录服务器 1.查看当前上线用户 2.群聊 3.私信 4.退出当前聊天状态 5.离线 6.查看帮助 ...