thinkPHP实现将excel导入到数据库中的方法


Posted in PHP onApril 22, 2016

本文实例讲述了thinkPHP实现将excel导入到数据库中的方法。分享给大家供大家参考,具体如下:

PHPExcel插件可点击此处本站下载。

这里使用的是thinkphp框架的3.1版本,下载好压缩包,框架中的extend中的vendor文件夹中新建一个名为PHPExcel的文件夹,把classes里面的内容放到里面

下面是前端页面

提示:我在测试的时候遇到报错exception 'PHPExcel_Reader_Exception' with message 'The filename

原因是由于excel的文件后缀可能不同,我的文件后缀是xlsx,然后给把他另存为了xls的文件,就可以了

<html>
 <head>
 </head>
 <body>
  <form action="{pigcms::U('Jdb/abcdefgwulisuibian')}" method="post" enctype="multipart/form-data">
   <input type="file" name="import"/>
   <input type="hidden" name="table" value="tablename"/>
   <input type="submit" value="导入"/>
  </form>
 </body>
</html>

下面是php的

function abcdefgwulisuibianuplod(){
  $this->display();//显示页面
}
function abcdefgwulisuibian(){
  if (!empty($_FILES)) {
   import("@.ORG.UploadFile");
   $config=array(
    'allowExts'=>array('xlsx','xls'),
    'savePath'=>'./Public/upload/',
    'saveRule'=>'time',
   );
   $upload = new UploadFile($config);
   if (!$upload->upload()) {
    $this->error($upload->getErrorMsg());
   } else {
    $info = $upload->getUploadFileInfo();
   }
   vendor("PHPExcel.PHPExcel");
    $file_name=$info[0]['savepath'].$info[0]['savename'];
    $objReader = PHPExcel_IOFactory::createReader('Excel5');
    $objPHPExcel = $objReader->load($file_name,$encode='utf-8');
    $sheet = $objPHPExcel->getSheet(0);
    $highestRow = $sheet->getHighestRow(); // 取得总行数
    $highestColumn = $sheet->getHighestColumn(); // 取得总列数
    for($i=2;$i<=$highestRow;$i++)//这个地方根据需要,一般第一行是名称,所以从第二行开始循环,也可以从第一行开始
    {
     $data['lianjieid'] = $objPHPExcel->getActiveSheet()->getCell("A".$i)->getValue();//数据库字段和excel列相对应
     $data['yaoqingma'] = $objPHPExcel->getActiveSheet()->getCell("B".$i)->getValue();
     $data['dlmima']= $objPHPExcel->getActiveSheet()->getCell("C".$i)->getValue();
     $data['ljdizhi']= $objPHPExcel->getActiveSheet()->getCell("D".$i)->getValue();
     M('jdb')->add($data);//插入数据库
    }
     $this->success('导入成功!');
  }else
   {
    $this->error("请选择上传的文件");
   }
}

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP网站提速三大“软”招
Oct 09 PHP
mysql中存储过程、函数的一些问题
Feb 14 PHP
php 采集书并合成txt格式的实现代码
Mar 01 PHP
php笔记之:php函数range() round()和list()的使用说明
Apr 26 PHP
Yii操作数据库的3种方法
Mar 11 PHP
PHP的error_reporting错误级别变量对照表
Jul 08 PHP
WordPress开发中用于标题显示的相关函数使用解析
Jan 07 PHP
PHP5.5.15+Apache2.4.10+MySQL5.6.20配置方法分享
May 06 PHP
让你的PHP7更快之Hugepage用法分析
May 31 PHP
PHP简单实现模拟登陆功能示例
Sep 15 PHP
实例讲解PHP表单处理
Feb 15 PHP
php使用gearman进行任务分发操作实例详解
Feb 26 PHP
利用php输出不同的心形图案
Apr 22 #PHP
php生成酷炫的四个字符验证码
Apr 22 #PHP
ThinkPHP连接Oracle数据库
Apr 22 #PHP
在CentOS系统上从零开始搭建WordPress博客的全流程记录
Apr 21 #PHP
yii2 页面底部加载css和js的技巧
Apr 21 #PHP
yii2整合百度编辑器umeditor及umeditor图片上传问题的解决办法
Apr 20 #PHP
又拍云异步上传实例教程详解
Apr 19 #PHP
You might like
图片动画横条广告带上下滚动的JS代码
2013/10/25 Javascript
JavaScript驾驭网页-CSS与DOM
2016/03/24 Javascript
jquery+ajax实现直接提交表单实例分析
2016/06/17 Javascript
jqGrid翻页时数据选中丢失问题的解决办法
2017/02/13 Javascript
js实现简单的手风琴效果
2017/02/27 Javascript
详解vue.js下引入百度地图jsApi的两种方法
2018/07/27 Javascript
js html实现计算器功能
2018/11/13 Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
2019/04/17 Javascript
js继承的这6种方式!(上)
2019/04/23 Javascript
使用vue-router在Vue页面之间传递数据的方法
2019/07/15 Javascript
vue data对象重新赋值无效(未更改)的解决方式
2020/07/24 Javascript
在vue中实现给每个页面顶部设置title
2020/07/29 Javascript
[02:15]2014DOTA2国际邀请赛 赛后退役选手回顾
2014/08/01 DOTA
Python全局变量操作详解
2015/04/14 Python
全面了解python字符串和字典
2016/07/07 Python
python处理自动化任务之同时批量修改word里面的内容的方法
2019/08/23 Python
python+opencv实现车牌定位功能(实例代码)
2019/12/24 Python
jupyter lab文件导出/下载方式
2020/04/22 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
html5移动端价格输入键盘的实现
2019/09/16 HTML / CSS
绘画设计学生的个人自我评价
2013/09/20 职场文书
优秀大学生推荐信范文
2013/11/28 职场文书
艺术设计专业个人求职信范文
2013/12/11 职场文书
培训心得体会
2013/12/29 职场文书
预备党员思想汇报
2014/01/08 职场文书
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
《将心比心》教学反思
2014/04/08 职场文书
房屋出租协议书
2014/04/10 职场文书
主要负责人任命书
2014/06/06 职场文书
市场营销策划方案
2014/06/11 职场文书
小学生推普周国旗下讲话稿
2014/09/21 职场文书
2014副镇长民主生活会个人对照检查材料思想汇报
2014/09/30 职场文书
个人租房协议书范本
2014/09/30 职场文书
在HTML5 localStorage中存储对象的示例代码
2021/04/21 Javascript
使用Python的开发框架Brownie部署以太坊智能合约
2021/05/28 Python
Python多线程实用方法以及共享变量资源竞争问题
2022/04/12 Python