//参数初始化
$filePath = ''; if ($_FILES["file"]["error"] > 0) {
returnJSON(ERROR_INVALID, $_FILES["file"]["error"]);
} $filePath = $_FILES["file"]["tmp_name"]; //建立reader对象
$this->load->library('PHPExcel');
$PHPReader = new PHPExcel_Reader_Excel2007();
if (!$PHPReader->canRead($filePath)) {//如果不是excel2007,尝试使用excel5
$PHPReader = new PHPExcel_Reader_Excel5();
if (!$PHPReader->canRead($filePath)) {
returnJSON(ERROR_INVALID, 'excel not existing');
}
} //建立excel对象,此时你即可以通过excel对象读取文件,也可以通过它写入文件
$PHPExcel = $PHPReader->load($filePath); //导入第一个工作表的数据
$this->db->truncate('dzg_card_info'); //清理表
$currentSheet = $PHPExcel->getSheet(0); //读取excel文件中的第一个工作表
$columnCount = $currentSheet->getHighestColumn(); //取得最大的列号
$rowCount = $currentSheet->getHighestRow(); //取得一共有多少行
for ($rowIndex = 2; $rowIndex <= $rowCount; $rowIndex++) {
$name = iconv('utf-8', 'gbk', $currentSheet->getCell('B' . $rowIndex)->getValue());
$skill = iconv('utf-8', 'gbk', $currentSheet->getCell('C' . $rowIndex)->getValue());
$create_time = iconv('utf-8', 'gbk', $currentSheet->getCell('D' . $rowIndex)->getValue());
$this->admin_model->insertCardInfo($name, $skill, $create_time);
} //导入第二个工作表
$this->db->truncate('dzg_card_message'); //清理表
$currentSheet = $PHPExcel->getSheet(1); //读取excel文件中的第一个工作表
$columnCount = $currentSheet->getHighestColumn(); //取得最大的列号
$rowCount = $currentSheet->getHighestRow(); //取得一共有多少行
for ($rowIndex = 2; $rowIndex <= $rowCount; $rowIndex++) {
$uid = iconv('utf-8', 'gbk', $currentSheet->getCell('B' . $rowIndex)->getValue());
$message = iconv('utf-8', 'gbk', $currentSheet->getCell('C' . $rowIndex)->getValue());
$this->admin_model->insertCardMsg($uid, $message);
}
        <form action="index.php?c=admin&m=importExcel&d=admin" method="post" enctype="multipart/form-data">
<label for="file">导入excel:</label>
<input type="file" name="file" id="file" />
<input type="submit" name="submit" value="提交" />
</form>

PHPExcel 多工作表 导入的更多相关文章

  1. PHPExcel 多工作表 导出

    //浏览器输出excel header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet ...

  2. PHPExcel导出工作蒲(多表合并)教程+详细代码解读

    最近做了一个需求,导出统计数据,因为需要同时导出多个不同的统计数据,所以不能像以往导出数据列表一样去实现这个需求,刚好空下来就记录一下(PHPExcel导出Excel多sheet合并) 一.主要使用的 ...

  3. PHP用PHPExcel导出有多个工作表的Excel表格(thinkPHP3.2.3)

    直接上代码: //导出excel public function excel() { //引入相关文件 import("Org.Util.PHPExcel"); import(&q ...

  4. tp3.2.3运用phpexcel将excel文件导入mysql数据库

    1,下载PHPExcel 2,配置将下载好的PHPExcel文件与PHPExcel.php 放到thinkphp 根目录 include/Library/Org/Util/下面 3,同时将PHPExc ...

  5. PHPExcel集成对数据导入和导出

    <?php /** * Created by PhpStorm. * User: admin * Date: 2017/8/15 * Time: 9:07 */ class User exten ...

  6. 使用命令行将Excel数据表导入Mysql中的方法小结

    从Excel数据表导入MySQL,已经做过好几次了,但每次都会碰到各种问题:invalid utf8 character string, data too long, ...,浪费了不少时间 为了提高 ...

  7. 【Access2007】将Excel表导入到Access2007在现有的表成

    将Excel表导入到Access2007,你会发现邪恶Access2007这将帮助你自己主动创建表.您是否想插入完全没问你到一个现有的表. 然后,我们需要解决这个问题: 一.常的步骤先将Excel表导 ...

  8. 此文本文件包含的数据无法放置在一个工作表中 gb2312

    excel导入csv,csv要从unicode转为gb2312, 否则提示:此文本文件包含的数据无法放置在一个工作表中

  9. C# 获得Excel工作簿Sheet页面(工作表)集合的名称

    #region 获取Excel工作薄中Sheet页(工作表)名集合 /// <summary> /// 获取Excel工作薄中Sheet页(工作表)名集合 /// </summary ...

随机推荐

  1. 一个使用enum实现多态的例子

    下面的写法与直接 使用静态方法而言,可读性.可维护性更强是不是有DSL的感觉.... 当然enum反编译后,的确就是静态方法. /** * Created by MyWorld on 2016/8/3 ...

  2. top k 算法

    对于一个非有序的数组A[p..r],求数组中第k小的元素. 如何考虑 排序(部分排序)就不用说了..o(nlgn),当然如果在实际情况中要一直取值,当然要排序后,一次搞定,以后都是O(1) 我们这里提 ...

  3. Linux下利用fork()创建子进程并使父进程等待子进程结束

    int status; pid_t t = fork(); if(t){     waitpid(t, &status, 0); }else{     system("vi temp ...

  4. hdu 5583 Kingdom of Black and White(模拟,技巧)

    Problem Description In the Kingdom of Black and White (KBW), there are two kinds of frogs: black fro ...

  5. 在asp.net中如何实现伪静态页 [转]

    我在这里就不过多讨论静态页.伪静态页.动态页的长短利弊了.只是单纯的讲解如何在asp.net中如何实现伪静态页,以帮助有这方面有需求的朋友,快速解决boss派下来的任务.(拿奖金的时候,记得有我一份功 ...

  6. POJ 2774 Long Long Message&&HDU 1403 Longest Common Substring&&COJ 1203

    后缀数组的买1送2题... HDU的那题数据实在是太水了,后来才发现在COJ和POJ上都是WA..原因在一点:在建立sa数组的时候里面的n应该是字符串长度+1....不懂可以去看罗大神的论文... 就 ...

  7. Math.round(11.5)等于()Math.round(-11.5)等于()

    几天前去面试,这道简单的题目居然做错了,看来基础就是慢慢积累的.并不断使用和复习才会成为高手,假设基础不是那么熟练.恐怕在成为高手的路上会困难重重.所以在做项目的间歇时间.偶尔回顾一下最基础的知识.是 ...

  8. 9大理由告诉你为什么应该学习HTML跟CSS

    你是不是听过太多人告诉你:「人人都应该要会 coding!」都快要不耐烦了对吧? 究竟为什么身为一个行销专业者.作家.金融巨擘--,整个世界还要你学会 coding? 事实上仅仅要对 HTML.CSS ...

  9. Body joints angle using Kinect

    http://stackoverflow.com/questions/12608734/body-joints-angle-using-kinect-checking-time-interval?rq ...

  10. 导航栏控制器和标签栏控制器(UINavigationController和UITabBarController)混用

    很多时候,在UI设计方面同时需要使用导航控制器和标签栏控制器,这时,需要掌握如何设计结合使用这两种不同控制器.比如手机QQ,程序有三个标签 栏(分别为消息.联系人.动态),同时在选择某个联系人或者会话 ...