基于ThinkPHP+uploadify+upload+PHPExcel如何实现无刷新导入数据
创始人
2024-12-11 10:43:46
0次

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

 
 
 

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)) 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);
 }

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...