最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于ThinkPHP+uploadify+upload+PHPExcel 無刷新導(dǎo)入數(shù)據(jù)

 更新時(shí)間:2015年09月23日 09:07:46   作者:huilange  
這篇文章主要介紹了基于ThinkPHP+uploadify+upload+PHPExcel 無刷新導(dǎo)入數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下

廢話不多說,直接給大家貼代碼了,代碼附有注釋,相信大家都能看懂的,有不明白的地方歡迎給我留言。

前端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中進(jìn)行配置,默認(rèn)關(guān)閉的需要開啟
 var sid = '{:session_id()}';
 //導(dǎo)入數(shù)據(jù)地址
 var daoruUrl = "{:U(MODULE_NAME.'/Student/daoruHandle')}"
 //Amaze ui 模態(tài)框
 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',
  //開始上傳彈出模態(tài)框
  'onUploadStart' : function(file) {
  $('#alert-content').html('正在上傳文件');
   modal.modal();
  },
  //上傳成功關(guān)閉模態(tài)框,并用后臺(tái)函數(shù)導(dǎo)入數(shù)據(jù)
  'onUploadSuccess':function(file, data, response){
  $('#alert-content').html('正在導(dǎo)入數(shù)據(jù)');
  data = eval("("+data+")");
  $.ajax({
   type: 'POST',
   url: daoruUrl,
   data: {'file':data.file},
   success: function(retdata){
   modal.modal('close');
   if(retdata==1){
    alert('導(dǎo)入成功');
   }else{
    alert('導(dǎo)入失敗');
   }
   },
   dataType: 'json'
  });
  }
 });
 });
 </script>

3、ThinkPHP控制器上傳操作:備注需要引入U(xiǎn)pload.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) {// 上傳錯(cuò)誤提示錯(cuò)誤信息
   $this->error($upload->getError());
  }else{// 上傳成功 獲取上傳文件信息
   $file = $info['Filedata']['savepath'].$info['Filedata']['savename'];
  }
  //p($info);
  $data = array(
   'file'=>'./Uploads/'.$file,
   );
  echo json_encode($data);
 }

4.導(dǎo)入數(shù)據(jù)進(jìn)去mysql

//導(dǎo)入數(shù)據(jù)處理
 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文件返回?cái)?shù)據(jù)函數(shù)

function excel_to_mysql($file){
  //導(dǎo)入PHPExcel第三方類庫(kù)
  //vendor('PHPExcel.PHPExcel');
  import('Classes.PHPExcel',COMMON_PATH,'.php');
  //實(shí)例化PHPExcel類,用于接收Excel文件
  $PHPExcel = new PHPExcel();
  //讀取Excel文件類實(shí)例化
  $PHPReader = new PHPExcel_reader_Excel5();
  //檢測(cè)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中表的數(shù)量
  $sheetCount = $PHPExcel->getSheetCount();
  //獲得第一張工作表
  $sheet=$PHPExcel->getSheet(0);
  //獲得表中最大數(shù)據(jù)列名
  $column = $sheet->getHighestColumn();
  //獲得表中最大數(shù)據(jù)行名
  $row = $sheet->getHighestRow();
  //循環(huán)獲得表中數(shù)據(jù)
  for($i=1;$i<=$row;$i++){
   $data[] = array(
    //通過工作表對(duì)象的getCell方法獲得單元格 getValue方法獲得該單元格數(shù)值
    'xuehao'=>$sheet->getCell('A'.$i)->getValue(),
    'xingming'=>$sheet->getCell('B'.$i)->getValue(),
    'xingbie'=>$sheet->getCell('C'.$i)->getValue(),
    'mima'=>$sheet->getCell('D'.$i)->getValue(),
   );
  }
  //釋放工作表對(duì)象
  unset($sheet);
  //釋放讀取Excel文件對(duì)象
  unset($PHPReader);
  //釋放Excel文件對(duì)象
  unset($PHPExcel);
  //返回?cái)?shù)據(jù)
  return array('error'=>0,'data'=>$data);
 }

通過以上代碼實(shí)現(xiàn)了ThinkPHP+uploadify+upload+PHPExcel 無刷新導(dǎo)入數(shù)據(jù),希望對(duì)大家有所幫助。

相關(guān)文章

  • php輸出金字塔的2種實(shí)現(xiàn)方法

    php輸出金字塔的2種實(shí)現(xiàn)方法

    這篇文章主要介紹了php輸出金字塔的2種實(shí)現(xiàn)方法,涉及循環(huán)語句的調(diào)用技巧,對(duì)于php的學(xué)習(xí)有一定的借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • php連接oracle數(shù)據(jù)庫(kù)的方法(測(cè)試成功)

    php連接oracle數(shù)據(jù)庫(kù)的方法(測(cè)試成功)

    這篇文章主要介紹了php連接oracle數(shù)據(jù)庫(kù)的方法,簡(jiǎn)單分析了php連接Oracle數(shù)據(jù)庫(kù)的常見方法與具體操作技巧,并對(duì)可能出現(xiàn)的問題進(jìn)行了總結(jié)分析,需要的朋友可以參考下
    2016-05-05
  • PHP錯(cuò)誤和異常處理功能模塊示例

    PHP錯(cuò)誤和異常處理功能模塊示例

    這篇文章主要介紹了PHP錯(cuò)誤和異常處理功能模塊,較為詳細(xì)的分析了php常見的錯(cuò)誤級(jí)別與錯(cuò)誤處理相關(guān)操作技巧,需要的朋友可以參考下
    2016-11-11
  • php獲取excel文件數(shù)據(jù)

    php獲取excel文件數(shù)據(jù)

    本篇文章主要介紹了php獲取excel文件數(shù)據(jù)的方法。具有很好的參考價(jià)值。下面跟著小編一起來看下吧
    2017-04-04
  • php中CI操作多個(gè)數(shù)據(jù)庫(kù)的代碼

    php中CI操作多個(gè)數(shù)據(jù)庫(kù)的代碼

    最近有個(gè)需求,做一個(gè)獨(dú)立后臺(tái)出來,這個(gè)獨(dú)立后臺(tái)有單獨(dú)的庫(kù),單獨(dú)的url,單獨(dú)…。但是,這里邊只是一些基礎(chǔ)數(shù)據(jù),而使用者需要通過該庫(kù)查看另一個(gè)庫(kù)里的統(tǒng)計(jì)數(shù)據(jù)。這就帶來一個(gè)問題:我需要在控制器里邊可以同時(shí)操作兩個(gè)數(shù)據(jù)庫(kù),而且這兩個(gè)庫(kù)毫不相干
    2012-07-07
  • php使用sql數(shù)據(jù)庫(kù) 獲取字段問題介紹

    php使用sql數(shù)據(jù)庫(kù) 獲取字段問題介紹

    由于sql server中,ntext和nvarchar字段是用unicode編碼存儲(chǔ)內(nèi)容的,因此php通過mssql擴(kuò)展讀取帶ntext和nvarchar類型字段的時(shí)候會(huì)抱錯(cuò)
    2013-08-08
  • PHP中引用類型和值類型功能與用法示例

    PHP中引用類型和值類型功能與用法示例

    這篇文章主要介紹了PHP中引用類型和值類型功能與用法,簡(jiǎn)單分析了php引用類型和值類型的概念、功能、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2019-02-02
  • php中計(jì)算中文字符串長(zhǎng)度、截取中文字符串的函數(shù)代碼

    php中計(jì)算中文字符串長(zhǎng)度、截取中文字符串的函數(shù)代碼

    在做PHP開發(fā)的時(shí)候,由于我國(guó)的語言環(huán)境問題,所以我們常常需要對(duì)中文進(jìn)行處理。
    2011-08-08
  • 學(xué)習(xí)php設(shè)計(jì)模式 php實(shí)現(xiàn)橋梁模式(bridge)

    學(xué)習(xí)php設(shè)計(jì)模式 php實(shí)現(xiàn)橋梁模式(bridge)

    這篇文章主要介紹了php設(shè)計(jì)模式中的橋梁模式,使用php實(shí)現(xiàn)橋梁模式,感興趣的小伙伴們可以參考一下
    2015-12-12
  • PHP pthreads v3下同步處理synchronized用法示例

    PHP pthreads v3下同步處理synchronized用法示例

    這篇文章主要介紹了PHP pthreads v3下同步處理synchronized用法,結(jié)合實(shí)例形式分析了PHP pthreads v3下同步處理synchronized原理、使用方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下
    2020-02-02

最新評(píng)論

青海省| 临西县| 于田县| 湛江市| 同德县| 高阳县| 中阳县| 蛟河市| 额尔古纳市| 镇宁| 涟源市| 梓潼县| 淅川县| 宜宾市| 政和县| 于都县| 视频| 德惠市| 洛浦县| 南平市| 深水埗区| 左权县| 镇沅| 科技| 长垣县| 沙田区| 临澧县| 长汀县| 遵义市| 元氏县| 蓬莱市| 乐亭县| 新沂市| 贵州省| 迁安市| 阜南县| 夏河县| 西丰县| 清丰县| 昆明市| 军事|