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 相关文章推荐
模板引擎Smarty深入浅出介绍
Dec 06 PHP
PHP数组及条件,循环语句学习
Nov 11 PHP
解析php中eclipse 用空格替换 tab键
Jun 24 PHP
php float不四舍五入截取浮点型字符串方法总结
Oct 28 PHP
php中call_user_func函数使用注意事项
Nov 21 PHP
php查询mysql大量数据造成内存不足的解决方法
Mar 04 PHP
PHP整合PayPal支付
Jun 11 PHP
使用xampp搭建运行php虚拟主机的详细步骤
Oct 21 PHP
php组合排序简单实现方法
Oct 15 PHP
php ajax confirm 删除实例详解
Mar 06 PHP
浅析PHP7的多进程及实例源码
Apr 14 PHP
php微信小程序解包过程实例详解
Mar 31 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
2020年4月新番动漫目录 官方宣布4月播出的作品一览
2020/03/08 日漫
PHP计划任务之关闭浏览器后仍然继续执行的函数
2010/07/22 PHP
浅谈discuz密码加密的方式
2014/05/22 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
2014/10/14 PHP
PHP使用gmdate实现将一个UNIX 时间格式化成GMT文本的方法
2015/03/19 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
javascript Ext JS 状态默认存储时间
2009/02/15 Javascript
flash调用js中的方法,让js传递变量给flash的办法及思路
2013/08/07 Javascript
javascript ajax的5种状态介绍
2014/08/18 Javascript
AngularJS入门教程中SQL实例详解
2016/07/27 Javascript
canvas实现简易的圆环进度条效果
2017/02/28 Javascript
js 获取元素的具体样式信息getcss(实例讲解)
2017/07/05 Javascript
浅谈Vue.js路由管理器 Vue Router
2018/08/16 Javascript
vue弹窗组件的实现示例代码
2018/09/10 Javascript
javascript中floor使用方法总结
2019/02/02 Javascript
jQuery层叠选择器用法实例分析
2019/06/28 jQuery
JS页面获取 session 值,作用域和闭包学习笔记
2019/10/16 Javascript
编程语言Python的发展史
2014/09/26 Python
Python中使用Tkinter模块创建GUI程序实例
2015/01/14 Python
python中assert用法实例分析
2015/04/30 Python
利用python爬取斗鱼app中照片方法实例
2017/12/03 Python
使用python读取txt文件的内容,并删除重复的行数方法
2018/04/18 Python
Python实现读取txt文件并转换为excel的方法示例
2018/05/17 Python
Pandas库之DataFrame使用的学习笔记
2019/06/21 Python
Python3中urlencode和urldecode的用法详解
2019/07/23 Python
处理textarea中的换行和空格
2019/12/12 HTML / CSS
Monnier Frères美国官网:法国知名奢侈品网站
2016/11/22 全球购物
中国双语服务优势的在线购票及活动平台:247tickets
2018/10/26 全球购物
精伦电子Java笔试题
2013/01/16 面试题
非常详细的C#面试题集
2016/07/13 面试题
创业计划书的写作技巧及要点
2014/01/31 职场文书
会计岗位说明书
2014/07/29 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
写作技巧:怎样写好一份优秀工作总结?
2019/08/14 职场文书
使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
2021/04/07 HTML / CSS
动画《朋友游戏》公开佐藤友生绘制的开播纪念绘
2022/04/06 日漫