thankPHP3.2 上传Excel代码

//批量导入界面
public function import_excel(){
$this->display();
}
//批量导入保存进数据库
public function excel_upload(){
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 3145728 ;// 设置附件上传大小
$upload->exts = array(‘xls‘, ‘xlsx‘);// 设置附件上传类
$upload->savePath = ‘/‘; // 设置附件上传目录
// 上传文件
$info = $upload->uploadOne($_FILES[‘excelData‘]);
$filename = ‘./Uploads‘.$info[‘savepath‘].$info[‘savename‘];
$exts = $info[‘ext‘];
//dump($info);
//exit;
//print_r($info);exit;
if(!$info) {// 上传错误提示错误信息
$this->error($upload->getError());
}else{// 上传成功
//导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入
import("Org.Util.PHPExcel");
//创建PHPExcel对象,注意,不能少了\
$PHPExcel=new \PHPExcel();
//如果excel文件后缀名为.xls,导入这个类
if($exts == ‘xls‘){
import("Org.Util.PHPExcel.Reader.Excel5");
$PHPReader=new \PHPExcel_Reader_Excel5();
}else if($exts == ‘xlsx‘){
import("Org.Util.PHPExcel.Reader.Excel2007");
$PHPReader=new \PHPExcel_Reader_Excel2007();
}

//载入文件
$PHPExcel=$PHPReader->load($filename);
//获取表中的第一个工作表,如果要获取第二个,把0改为1,依次类推
$currentSheet=$PHPExcel->getSheet(0);
//获取总列数

$allColumn=$currentSheet->getHighestColumn();
//获取总行数

$allRow=$currentSheet->getHighestRow();
//循环获取表中的数据,$currentRow表示当前行,从哪行开始读取数据,索引值从0开始
for($currentRow=2;$currentRow<=$allRow;$currentRow++){
//从哪列开始,A表示第一列
for($currentColumn=‘B‘;$currentColumn<=$allColumn;$currentColumn++){
//数据坐标
$address=$currentColumn.$currentRow;
//读取到的数据,保存到数组$arr中
$data[$currentRow][$currentColumn]=$currentSheet->getCell($address)->getValue();
}

}

$this->save_import($data);
}
}

//保存导入数据
public function save_import($data){
//print_r($data);exit;

$mod = M(‘agent_user‘);
$add_time = date(‘Y-m-d H:i:s‘, time());
foreach ($data as $k=>$v){
$date[‘name‘] = $v[‘B‘];
$date[‘reg_agency‘] = $v[‘C‘];
$date[‘reg_store_code‘] = $v[‘D‘];
$date[‘mobile‘] = $v[‘E‘];
$date[‘othercontact‘] = $v[‘F‘];
$date[‘pwd‘] = $v[‘G‘];
$date[‘audit_state‘]=$v[‘H‘];
$date[‘summary‘]=$v[‘I‘];
$date[‘add_time‘]=$add_time;
if (!empty($date[‘name‘])) {
$result = $mod->add($date);
}
}
if ($result) {
$this->success(‘数据导入成功‘);
$this->display(‘index/agentUser‘);
}else {
$this->error("数据导入失败");
$this->display(‘index/agentUser‘);
}

//print_r($info);
}

时间: 2024-11-15 06:55:27

thankPHP3.2 上传Excel代码的相关文章

上传excel数据到数据库中

上传excel表格数据到数据库 导入固定路径下的excel数据到数据库 <form id="disposeFlightDataForm" action="../upload/disposeFlightData" method="post"> <input id="disposeFlightDataButton" type="submit" value="处理航班数据"

SpringMVc上传excel或csv文件

1.JSP页面代码 <form enctype=""multipart/form-data" method="post"> <input type="file" name="file"> <input type="submit" value="上传" > </form> 2.controller中代码 @RequestMappin

abap金税上传EXCEL版

SAP ERP ECC6.0标准功能提供给了金税接口,对于一般的公司来说,这个接口基本也够了. 事务代码:GT_DLN 下载SAP发票信息: 事务代码:GT_ULN 上传金税信息到SAP中: 前提条件:SAP ERP ECC6.0 功能增强包EHp3及以上. 激活业务功能事务代码 SFW5选择业务功能FIN_LOC_CI_1,点击激活按钮. 激活业务功能包后,系统将执行一个后台任务,执行可能需要长达一小时. 参见SAP Note:Note 1290073 – China Golden Tax S

使用ocupload和POI一键上传Excel并解析导入数据库

使用的工具如下:  JQuery ocupload jquery.ocupload-1.1.2.js Apache POI  poi-3.9.jar 如果是Maven项目添加依赖如下: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version> </dependency> J

js上传Excel文件

一.问题 需要在项目里添加一个上传excel文件的功能,因为其他同样的后台里面有上传文件的功能,第一反应就是想着直接用.了解了一下发现它是利用bootstrap的fileinput实现的,但是我怎么都不能把fileinput插件给加到java的项目里,然后就只能自己用js实现吧.好像也没什么特别的需求. 1)原本的样式不好看,需要和项目一致 2)只上传xls和xlxs的文件 二.代码 <input type="file" id="file" name=&quo

Ajax实现上传Excel

最近在做一个项目,涉及到了上传excel,由于技术不好,就采用了form表单进行提交,效果是实现,但是用户提现不够完美,几经周折,用了Ajax实现了 代码如下: HTML: JS: 原文地址:https://www.cnblogs.com/southyue/p/12005809.html

python之实现ftp上传下载代码(含错误处理)

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之实现ftp上传下载代码(含错误处理) #http://www.cnblogs.com/kaituorensheng/p/4480512.html#_label2 import ftplib import socket import os def ftpconnect(ftp_info): try: ftp = ftplib.FTP(ftp_info[0]) except (socket.er

eclipse中导入jdk源码、SpringMVC注解@RequestParam、SpringMVC文件上传源码解析、ajax上传excel文件

eclipse中导入jdk源码:http://blog.csdn.net/evolly/article/details/18403321, http://www.codingwhy.com/view/799.html. ------------------------------- SpringMVC注解@RequestParam:http://825635381.iteye.com/blog/2196911. --------------------------- SpringMVC文件上传源

python之模块ftplib(实现ftp上传下载代码)

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之模块ftplib(实现ftp上传下载代码) #需求:实现ftp上传下载代码(不含错误处理) from ftplib import FTP def ftpconnect(): ftp_server='ftp.python.org' ftp=FTP() ftp.set_debuglevel(2)#打开调式级别2 ftp.connect(ftp_server,21) ftp.login('',''