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 相关文章推荐
将RTF格式的文件转成HTML并在网页中显示的代码
Oct 09 PHP
用来给图片加水印的PHP类
Apr 09 PHP
PHP实现多条件查询实例代码
Jul 17 PHP
解析PHP高效率写法(详解原因)
Jun 20 PHP
php多任务程序实例解析
Jul 19 PHP
thinkphp文件引用与分支结构用法实例
Nov 26 PHP
php实现parent调用父类的构造方法与被覆写的方法
Feb 11 PHP
DEDECMS首页调用图片集里的多张图片
Jun 05 PHP
PHP获取当前日期及本周一是几月几号的方法
Mar 28 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
Apr 10 PHP
PHP生成各种随机验证码的方法总结【附demo源码】
Jun 05 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 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
使用PHP的日期与时间函数技巧
2008/04/24 PHP
网友原创的PHP模板类代码
2008/09/07 PHP
有关PHP中MVC的开发经验分享
2012/05/17 PHP
php的XML文件解释类应用实例
2014/09/22 PHP
PHP chop()函数讲解
2019/02/11 PHP
JAVASCRIPT keycode总结
2009/02/04 Javascript
js实现从数组里随机获取元素
2015/01/12 Javascript
javascript定义变量时带var与不带var的区别分析
2015/01/12 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
js实现文件上传表单域美化特效
2015/11/02 Javascript
js 判断附件后缀的简单实现方法
2016/10/11 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
基于JavaScript实现自动更新倒计时效果
2016/12/19 Javascript
vue 和vue-touch 实现移动端左右导航效果(仿京东移动站导航)
2017/04/22 Javascript
JavaScript实现省市联动过程中bug的解决方法
2017/12/04 Javascript
[03:44]2015国际邀请赛选手档案—Cloud9.NoTail
2015/07/28 DOTA
[04:20]DOTA2-DPC中国联赛 正赛 VG vs LBZS 选手采访 1月19日
2021/03/11 DOTA
Python实现批量检测HTTP服务的状态
2016/10/27 Python
Python端口扫描简单程序
2016/11/10 Python
python爬虫入门教程--利用requests构建知乎API(三)
2017/05/25 Python
python+ffmpeg视频并发直播压力测试
2018/03/06 Python
对python PLT中的image和skimage处理图片方法详解
2019/01/10 Python
Python数据存储之 h5py详解
2019/12/26 Python
解决Django no such table: django_session的问题
2020/04/07 Python
使用keras实现Precise, Recall, F1-socre方式
2020/06/15 Python
html5模拟平抛运动(模拟小球平抛运动过程)
2013/07/25 HTML / CSS
德国圣伯纳德草药屋:Kräuterhaus Sanct Bernhard(有中文站)
2018/08/05 全球购物
儿科护士自我鉴定
2013/10/14 职场文书
好的自荐信包括什么内容
2013/11/07 职场文书
医学院毕业生自荐信
2013/11/08 职场文书
制药工程专业职业生涯规划范文
2014/03/10 职场文书
2014向国旗敬礼网上签名活动总结
2014/09/27 职场文书
2014小学一年级班主任工作总结
2014/12/05 职场文书
大学生暑期实践报告之企业经营管理
2019/08/08 职场文书
Python数据分析入门之数据读取与存储
2021/05/13 Python
「租借女友」第2季樱泽墨角色PV&新视觉图公开
2022/03/21 日漫