南强小屋 Design By 杰米
废话不多说,直接给大家贴代码了,代码附有注释,相信大家都能看懂的,有不明白的地方欢迎给我留言。
前端HTML+JQuery 备注Jquery需要1.x版本,不能用2.x版本
1.引入必要文件及上传input
<load file="__PUBLIC__/js/jquery-1.11.3.min.js" /> <load file="__PUBLIC__/uploadify/jquery.uploadify.min.js" /> <load file="__PUBLIC__/uploadify/uploadify.css" /> <input type="file" class="" id="student" name="student">
2.uploadify使用操作
<script>
$(function(){
//ThinkPHP上传地址
var upload = "{:U(MODULE_NAME.'/Student/upload')}";
//ThinkPHP sessionID的提交变量
//'VAR_SESSION_ID'=>'session_id',在ThinkPHP/Conf/convention.php中进行配置,默认关闭的需要开启
var sid = '{:session_id()}';
//导入数据地址
var daoruUrl = "{:U(MODULE_NAME.'/Student/daoruHandle')}"
//Amaze ui 模态框
var modal = $('#my-modal-loading');
//uploadify使用方法
$('#student').uploadify({
'swf' : '__PUBLIC__/uploadify/uploadify.swf',
'uploader' : upload,
'buttonText' : '选择文件...',
'width':120,
'height':30,
'formData':{'session_id':sid},
'fileTypeExts':'*.xls',
//开始上传弹出模态框
'onUploadStart' : function(file) {
$('#alert-content').html('正在上传文件');
modal.modal();
},
//上传成功关闭模态框,并用后台函数导入数据
'onUploadSuccess':function(file, data, response){
$('#alert-content').html('正在导入数据');
data = eval("("+data+")");
$.ajax({
type: 'POST',
url: daoruUrl,
data: {'file':data.file},
success: function(retdata){
modal.modal('close');
if(retdata==1){
alert('导入成功');
}else{
alert('导入失败');
}
},
dataType: 'json'
});
}
});
});
</script>
3、ThinkPHP控制器上传操作:备注需要引入Upload.class.php空间
function upload(){
$config = array(
'maxSize' => 3145728,
'rootPath' => './Uploads/',
'savePath' => '',
'saveName' => array('uniqid',''),
'exts' => array('xls'),
'autoSub' => true,
'subName' => array('date','Ymd'),
);
$upload = new Upload($config);
// 上传文件
$info = $upload->upload();
if(!$info) {// 上传错误提示错误信息
$this->error($upload->getError());
}else{// 上传成功 获取上传文件信息
$file = $info['Filedata']['savepath'].$info['Filedata']['savename'];
}
//p($info);
$data = array(
'file'=>'./Uploads/'.$file,
);
echo json_encode($data);
}
4.导入数据进去mysql
//导入数据处理
function daoruHandle(){
$file = I('file');
$excelData = excel_to_mysql($file);
foreach($excelData['data'] as $row){
$data = array(
'xuehao'=>$row['xuehao'],
'xingming'=>$row['xingming'],
'xingbie'=>($row['xingbie']=='男')"htmlcode">
function excel_to_mysql($file){
//导入PHPExcel第三方类库
//vendor('PHPExcel.PHPExcel');
import('Classes.PHPExcel',COMMON_PATH,'.php');
//实例化PHPExcel类,用于接收Excel文件
$PHPExcel = new PHPExcel();
//读取Excel文件类实例化
$PHPReader = new PHPExcel_reader_Excel5();
//检测Excel版本是否可读
if(!$PHPReader->canRead($file)){
$PHPReader = new PHPExcel_Reader_Excel2007();
if(!$PHPReader->canRead($file)) return array('error'=>1);//未知版本的Excel
}
//读取Excel文件
$PHPExcel = $PHPReader->load($file);
//获得Excel中表的数量
$sheetCount = $PHPExcel->getSheetCount();
//获得第一张工作表
$sheet=$PHPExcel->getSheet(0);
//获得表中最大数据列名
$column = $sheet->getHighestColumn();
//获得表中最大数据行名
$row = $sheet->getHighestRow();
//循环获得表中数据
for($i=1;$i<=$row;$i++){
$data[] = array(
//通过工作表对象的getCell方法获得单元格 getValue方法获得该单元格数值
'xuehao'=>$sheet->getCell('A'.$i)->getValue(),
'xingming'=>$sheet->getCell('B'.$i)->getValue(),
'xingbie'=>$sheet->getCell('C'.$i)->getValue(),
'mima'=>$sheet->getCell('D'.$i)->getValue(),
);
}
//释放工作表对象
unset($sheet);
//释放读取Excel文件对象
unset($PHPReader);
//释放Excel文件对象
unset($PHPExcel);
//返回数据
return array('error'=>0,'data'=>$data);
}
通过以上代码实现了ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据,希望对大家有所帮助。
南强小屋 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米
暂无基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据的评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。