PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据

原创
2016-07-29 09:14:49 680浏览

前端HTML+JQuery  备注Jquery需要1.x版本,不能用2.x版本

1.引入必要文件及上传input

  

input type="file" class="" id="student" name="student">

2.uploadify使用操作

 

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']=='男')?1:0,
                'mima'=>md5($row['mima']),                );

            M('student')->add($data);
        }
        echo 1;
    }

5.PHPExcel读取Excel文件返回数据函数

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)) returnarray('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);
        //返回数据returnarray('error'=>0,'data'=>$data);
    }

以上就介绍了ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。