set_time_limit(0);//防止数据量过大超时
//处理进程
import('ORG.Net.UploadFile');
$upload = new UploadFile(); // 实例化上传类
$upload->maxSize = 4 * 1024 * 1024; // 设置附件上传大小
$upload->allowExts = array('xls');
$upload->savePath = './Upload/data/'; // 设置附件上传目录
$upload->saveRule = date('YmdHis');
if (!$upload->upload()) { // 上传错误提示错误信息
echo $upload->getErrorMsg();
} else {
//进行异常捕获,防止导入错误
try{
//导入完成,开始数据处理流程
$info = $upload->getUploadFileInfo();
$data = $info[0];
$path = $data['savepath'].$data['savename'];
/**
* 开始Excel处理进程
*/
vendor('PHPExcel.PHPExcel');
$objReader = new PHPExcel_Reader_Excel5();
$objExcel = $objReader->load($path);
$objSheet = $objExcel->getActiveSheet();
$rows = $objSheet->getHighestRow();//行数
/**
* 单元格定义
* B 二级学科代码
* C 二级学科名称
* D 一级学科代码
* E 一级学科名称
* F 学院代码
* G 学院名称
*/
//定义数组
$second_discipline_code = array();
$second_discipline_name = array();
$first_discipline_code = array();
$first_discipline_name = array();
$college_code = array();
$college_name = array();
for($i=1;$i<=$rows;$i++){
$second_discipline_code[] = $objSheet->getCell("B$i")->getFormattedValue();
$second_discipline_name[] = $objSheet->getCell("C$i")->getFormattedValue();
$first_discipline_code[] = $objSheet->getCell("D$i")->getFormattedValue();
$first_discipline_name[] = $objSheet->getCell("E$i")->getFormattedValue();
$college_code[] = $objSheet->getCell("F$i")->getFormattedValue();
$college_name[] = $objSheet->getCell("G$i")->getFormattedValue();
}
//写入数据库
$firstDataMdl = M('DataFirstDiscipline');
$secondDataMdl = M('DataSecondDiscipline');
$first_discipline_code_backup = $first_discipline_code;//不去重复的备份
$first_discipline_code = array_unique($first_discipline_code);//去重
//一级学科导入
foreach($first_discipline_code as $k=>$v){
$temp['college_id'] = $college_code[$k];
$temp['first_discipline_code'] = $v;
$temp['first_discipline_name'] = $first_discipline_name[$k];
$firstDataMdl->add($temp);
}
//二级学科导入
foreach($second_discipline_code as $k=>$v){
$temp['second_discipline_code'] = $v;
$temp['second_discipline_name'] = $second_discipline_name[$k];
//根据一级学科代码查一级学科ID
$first_discipline_code_flag = $first_discipline_code_backup[$k];
$id = $firstDataMdl->where("first_discipline_code = %d",$first_discipline_code_flag)->getField('first_discipline_id');
$temp['first_discipline_id'] = $id;
$secondDataMdl->add($temp);
}
echo '导入成功完成!';
}catch (PHPExcel_Exception $e){
echo $e->getMessage();
}catch (ThinkException $e){
echo $e->getMessage();
}catch (Exception $e){
echo '程序异常,导入失败!';
}
}
可以实现用户的在线注册、登陆后可以添加图书、购买图书,可以对图书类别、出版社、价格等进行饼图分析默认帐号/密码:51aspx/51aspx该系统采用三层接口开发,App_Code下为三层结构的代码文件,适合三层入门者学习使用数据绑定控件使用的是GridView,顶部公用文件采用了UserControl用户控件调用DB_51aspx下为Sql数据库文件,附件即可【该源码由51aspx提供】
0
全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号