fastadmin实现导出Excel和导入Excel数据
第一:导出数据为Excel
注意:直接url访问,不能使用ajax,因为ajax要求返回数据,和PHPExcel一会浏览器输出冲突!将数据作为参数
1、导出所有用户数据
代码:在index.html文件中的{:build_toolbar('refresh,del')}后面添加下面代码
<a href="user/out" class="btn btn-danger btn-import spec_add_btn"
data-title="导出测评数据" data-multiple="false" initialized="true"
style="position: relative; z-index: 1;">
<i class="fa fa-download"></i> 导出数据 </a>
2、导出单个用户数据
代码
{field: 'id', title: __('按钮'), table: table, buttons:[// {name: 'addname',// text: '添加字段',// title: '添加字段',// icon: 'fa fa-list',// classname: 'btn btn-xs btn-primary btn-dialog',//以弹窗方式// url: 'zhuhai/msgcat/addname'// },{ name: '导出测评数据',text: '导出测评数据',title: '导出测评数据',icon: 'fa fa-flash',classname: 'btn btn-xs btn-success',//btn-ajax不能以以ajax方式请求url: 'appletls/user/out',},], operate:false, formatter: Table.api.formatter.buttons},
php代码:
/*** 导出所有用户数据* 直接url访问,不能使用ajax,因为ajax要求返回数据,和PHPExcel一会浏览器输出冲突!将数据作为参数* @throws \PHPExcel_Exception* @throws \PHPExcel_Writer_Exception* @throws \think\Exception* @throws \think\db\exception\DataNotFoundException* @throws \think\db\exception\ModelNotFoundException* @throws \think\exception\DbException*/public function out(){$result = Db::name('applet_user')->field('id,name,mobile,colleges')->order('id desc')->select();$filename = "用户测评数据";vendor('PHPExcel.PHPExcel');$objPHPExcel = new \PHPExcel();//设置保存版本格式$objWriter = new \PHPExcel_Writer_Excel5($objPHPExcel);//设置表头$objPHPExcel->getActiveSheet()->setCellValue('A1','id');$objPHPExcel->getActiveSheet()->setCellValue('B1','姓名');$objPHPExcel->getActiveSheet()->setCellValue('C1','手机');$objPHPExcel->getActiveSheet()->setCellValue('D1','意向院校');$objPHPExcel->getActiveSheet()->setCellValue('E1','测评分值');$objPHPExcel->getActiveSheet()->setCellValue('F1','学历背景得分');$objPHPExcel->getActiveSheet()->setCellValue('G1','企业背景得分');$objPHPExcel->getActiveSheet()->setCellValue('H1','收入水平得分');$objPHPExcel->getActiveSheet()->setCellValue('I1','发展潜力得分');$objPHPExcel->getActiveSheet()->setCellValue('J1','管理经验得分');$objPHPExcel->getActiveSheet()->setCellValue('K1','英语水平得分');$objPHPExcel->getActiveSheet()->setCellValue('L1','背景优势');$objPHPExcel->getActiveSheet()->setCellValue('M1','背景劣势');$objPHPExcel->getActiveSheet()->setCellValue('N1','匹配院校');//改变此处设置的长度数值$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(10);$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(12);//输出表格$str = '用户未进行测评';foreach ($result as $key => &$val) {$count = Db::name('applet_answer')->where(['uid'=>$val['id'],'isdelete'=>0])->count();$i=$key+2;//表格是从2开始的if ($count>=1){$row = SubjectService::getResult($val['id'],'');//score--1学历背景 2企业背景 3收入水平 4发展潜力 5管理经验 6英语水平//优势$advan = $row['advan'] ? implode('、',$row['advan']) : '暂无优势';$inferi = $row['inferi'] ? implode('、',$row['inferi']) : '暂无劣势';$colllist = $row['colllist'] ? implode('、',array_column($row['colllist'],'title')) : '无匹配院校';//$score = Db::name('applet_answer')->where(['uid'=>$val['id'],'isdelete'=>0])->sum('score');//dump($row);exit();$objPHPExcel->getActiveSheet()->setCellValue('A'.$i,$val['id']);$objPHPExcel->getActiveSheet()->setCellValue('B'.$i,$val['name']);$objPHPExcel->getActiveSheet()->setCellValue('C'.$i,$val['mobile']);$objPHPExcel->getActiveSheet()->setCellValue('D'.$i,$val['colleges']);$objPHPExcel->getActiveSheet()->setCellValue('E'.$i,$row['totalscore']);$objPHPExcel->getActiveSheet()->setCellValue('F'.$i,$row['score'][0]);$objPHPExcel->getActiveSheet()->setCellValue('G'.$i,$row['score'][1]);$objPHPExcel->getActiveSheet()->setCellValue('H'.$i,$row['score'][2]);$objPHPExcel->getActiveSheet()->setCellValue('I'.$i,$row['score'][3]);$objPHPExcel->getActiveSheet()->setCellValue('J'.$i,$row['score'][4]);$objPHPExcel->getActiveSheet()->setCellValue('K'.$i,$row['score'][5]);$objPHPExcel->getActiveSheet()->setCellValue('L'.$i,$advan);$objPHPExcel->getActiveSheet()->setCellValue('M'.$i,$inferi);$objPHPExcel->getActiveSheet()->setCellValue('N'.$i,$colllist);}else{$objPHPExcel->getActiveSheet()->setCellValue('A'.$i,$val['id']);$objPHPExcel->getActiveSheet()->setCellValue('B'.$i,$val['name']);$objPHPExcel->getActiveSheet()->setCellValue('C'.$i,$val['mobile']);$objPHPExcel->getActiveSheet()->setCellValue('D'.$i,$val['colleges']);$objPHPExcel->getActiveSheet()->setCellValue('E'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('F'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('G'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('H'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('I'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('J'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('K'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('L'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('M'.$i,$str);$objPHPExcel->getActiveSheet()->setCellValue('N'.$i,$str);}}header("Pragma: public");header("Expires: 0");header("Cache-Control:must-revalidate, post-check=0, pre-check=0");header("Content-Type:application/force-download");header("Content-Type:application/vnd.ms-execl");header("Content-Type:application/octet-stream");header("Content-Type:application/download");header('Content-Disposition:attachment;filename='.$filename.'.xls');header("Content-Transfer-Encoding:binary");$objWriter->save('php://output');}
第二:导入Excel【fastadmin自带导入】
注意:上传只支持xls、xlsx、csv三种格式的数据
1、在你的模块控制器下添加import方法
public function import(){
return parent::import();
}
2、在index.html中的build_toolbar方法添加import,如下
{:build_toolbar(‘refresh,add,edit,del,import’)}
3、在模块对应的JS中添加import_url,如下
Table.api.init({
extend: {
index_url: ‘example/index’,
add_url: ‘example/add’,
edit_url: ‘example/edit’,
del_url: ‘example/del’,
import_url: ‘example/import’,
multi_url: ‘example/multi’,
dragsort_url: ‘’,
table: ‘category’,
}
});
第三:自定义导入Excel
fastadmin实现导出Excel和导入Excel数据相关推荐
- php导入qq数据txt代码,/谁有能都实现将excel文件导入到数据中,并在php网页上显示的源码啊,有的发送1091932879@qq.com,谢谢!...
PHP网页怎么导入Excel的数据 参码如下: // 1.引用ExcelReader类文 require_once 'Excel/reader.php'; // 2.实例化读取Excel类 $data ...
- abaqus python 读取文件_通过Python脚本从Abaqus中的excel文件导入幅度数据
我在从excel文件导入幅度数据时在Abaqus中创建了以下宏.然后尝试运行此脚本以从同一个excel文件创建另一个幅度但不幸的是,我有以下错误.在这方面有人可以帮助我吗? 脚本: # Do not ...
- java导出excel,导入excel,导出csv工具类整理
===============================================================导出excel============================== ...
- java excel批量导入数据库数据_Java实现Excel数据批量导入数据库
Java实现Excel数据批量导入数据库 概述: 这个小工具类是工作中的一个小插曲哦,因为提数的时候需要跨数据库导数... 有的是需要从oracle导入mysql ,有的是从mysql导入oracle ...
- 在matlab中导入excel,Matlab导入Excel文件中的数据的详细教程分享
操作Matlab时还不会导入Excel文件中的数据?本文就介绍了Matlab导入Excel文件中的数据的操作内容,想要学习的朋友可以看一看下文哦,相信对大家会有所帮助的. 直接点击鼠标操作导入数据 打 ...
- 将Excel表格导入mysql数据表_将excel表导入数据库的方法步骤
在Excel中录入好数据以后,可能会有导入数据库的需求,这个时候就需要利用一些技巧导入.接下来是学习啦小编为大家带来的如何将excel表导入数据库的方法,希望对你有用. 将excel表导入数据库的方法 ...
- txt中的数据导入matlab中画图,excel怎样导入表格数据-如何将excel表格中大量数据导入matlab中并作图...
Excel中如何将另一表格中的数据对应导入 1开表格,在上方功能栏点击据". 2.点入数据. 3.点击数据来源. 4择想要的导入的数据文件,就好了. 如何将TXT文档中的数据直接导入到Exc ...
- 将Excel表格导入mysql数据表_如何把Excel导入mysql数据表的方法详解
把Excel导入mysql数据表其实是一件非常的简单的事情了,我们可以通过多种方法来实现了,下面我们来看一些关于小编整理的把Excel导入mysql数据表的方法了. 方法一 把Excel导入mysql ...
- MATLAB导入任意省市地图(Shp数据)并从EXCEL中导入经纬度数据在图上手动加点
目录 导入任意各省市Shp数据 从EXCEL导入经纬度数据并在图上手动加点 导入任意各省市Shp数据 1.首先下载任意省市Shp数据,详细步骤请看: 转载:三步教你免费下载省,市,区县行政区Shp数据 ...
最新文章
- 重磅!《2021中国开源发展蓝皮书》发布
- 安装 SharePoint 2013
- 在滴滴和头条干了 2 年后端开发,太真实…
- 计算机应用基础2016高起专,计算机应用基础-2016年秋季《计算机应用基础(高起专)》期末考核(20210407163441).pdf...
- 解决数据库 Table 'content_tags' is marked as crashed and should be repaired 表损坏问题
- [Usaco2008 Feb]Eating Together麻烦的聚餐
- 多进程与多线程通信同步机制
- 李宏毅机器学习(六)自监督学习(一)
- 计算传递函数乘法_软件开发教程:计算机科学最重要的32个算法
- js javascript 判断字符串是否包含某字符串,String对象中查找子字符,indexOf
- 【前端图表】echarts散点图鼠标划过散点显示信息
- 华为设备BGP中的路由控制与实验
- 一起谈.NET技术,ASP.NET的状态管理
- 番茄钟怎么调_番茄时钟起床时间怎么设置 番茄时钟起床时间设置方法
- 云上财务经营的成本管理
- 二建带记忆功能计算机,二建实务记忆技巧
- 当前的安全设置不允许从该位置下载文件。 的解决办法
- Pod2g已发现可完美越狱iOS 5的漏洞
- 玩乐|杭州夏季纳凉好去处
- java转大数据的学习路线