麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 開發 > PHP > 正文

php基于Fleaphp框架實現cvs數據導入MySQL的方法

2024-05-04 23:43:16
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php基于Fleaphp框架實現cvs數據導入MySQL的方法,涉及PHP基于Fleaphp框架針對cvs文件的讀取及數據庫操作相關技巧,需要的朋友可以參考下
 

本文實例講述了php基于Fleaphp框架實現cvs數據導入MySQL的方法。分享給大家供大家參考,具體如下:

<?php/* * To change this template, choose Tools | Templates * and open the template in the editor. */class Controller_KaoqinUpload extends FLEA_Controller_Action { var $uploaddir = "./uploadfiles/"; public function _construct(){  parent::__construct(); }// $patch="http://localhost/uploadfiles";/ function actionIndex() {  $smarty =& $this->_getView();  $smarty->display("kaoqin_upload.html"); } //顯示錯誤 private function showErro(){ error_reporting(E_ALL);  ini_set("display_errors","On"); } //判斷日期 private function isDate($file_name) {  $filename = explode('.',$file_name); $real_name = $filename[count($filename)-2];//得到文件名  $format="Y-m-d";//時間格式類型  $unixTime=strtotime($real_name);  $checkDate= date($format,$unixTime);   if($real_name==$checkDate)    return ture;   else    return false; } public function actionSave(){// $this->showErro(); $upload_file=$_FILES['upload_file']; $file_name = $_FILES['upload_file']['name']; $file_tmp_name = $_FILES['upload_file']['tmp_name']; $file_type = $_FILES['upload_file']['type']; $file_size = $_FILES['upload_file']['size']; $file_error = $_FILES['upload_file']['error'];  //檢查文件  if ($file_name==null)   {    echo "文件選擇出錯,請檢查上傳文件。";    exit;   }  //判斷文件大小  if ($file_size >=10241024 )   {    $file_size = round($file_size/ 1048576 * 100) / 100 . ' mb';    print_r("上傳的文件大小為"."$file_size");  echo "系統只允許上傳大小為10M以內的文件。";  exit;   }  //$extention_name = end(explode('.',$_FILES["upload_file"]['name']));//獲取擴展名  $extention_name=preg_replace('/.*/.(.*[^/.].*)*/iU','//1',$file_name);//獲得文件的擴展名  //檢查文件類型  if($file_type!="application/vnd.ms-excel"&& $extention_name!="csv")   {  echo "您上傳的文件類型: .",$extention_name,"<br>";  print_r("系統允許文件類型: .csv");  exit;   }  if(file_exists($this->uploaddir.$_FILES['upload_file']['name']))  {    print("備份目錄同名數據存在"); //文件存在    exit;  }  if($this->isDate($file_name)==FALSE)  {    print("文件命名格式不對,正確格式。例:2010-10-28.csv");   //文件存在    exit;  }  // var_dump(file_exists($this->uploaddir.$_FILES['upload_file']['name'])); //test返回  print_r("原始考勤數據文件:".$_FILES['upload_file']['name']."<br>"."<br>");  //數據導入//  $fp = fopen($_FILES['upload_file']['tmp_name'], "r");//  $data = fgets($fp, 1000);//  $date=setOutputEncoding('utf-8');  $data=file($_FILES['upload_file']['tmp_name']); $attendance =& get_singleton('Model_attendance');  //print_r($data);  //數據導入處理  for($i=1;$i<count($data)-1;$i++) {   $a=explode(";",$data[$i]);   //編碼格式轉換   $a[0]=iconv("gb2312", "utf-8", $a[0]);   $a[1]=iconv("gb2312", "utf-8", $a[1]);   $a[2]=iconv("gb2312", "utf-8", $a[2]);   $a[4]=iconv("gb2312", "utf-8", $a[4]);   $a[5]=iconv("gb2312", "utf-8", $a[5]);   // print_r($a);   $t=array();   $t["ATTENDANCE_FINGERPRINT_ID"]=intval(trim($a[0],"/""));   $t["ATTENDANCE_USER_NAME"]=trim($a[1],"/"");   $t["ATTENDANCE_DATE"]=trim($a[2],"/"");   // $t["ATTENDANCE_DIVISIONS"]=trim($a[3],"/"");//表中字段ATTENDANCE_DIVISIONS在表中刪除   $t["ATTENDANCE_GO_WORK"]=trim($a[4],"/"");   $t["ATTENDANCE_AFTER_WORK"]=trim($a[5],"/"");   //判斷打卡情況   $go_work = trim($a[4],"/"");//上班時間   $after_work = trim($a[5],"/"");//下班時間 //   print_r(var_dump($go_work));   // exit();   if(strlen($go_work)==0 && strlen($after_work)!=0)    {     $t["ATTENDANCE_STATUS"]= "1"; //"1"代表正常出勤    }   if(strlen($go_work)!=0 && strlen($after_work)==0)    {      $t["ATTENDANCE_STATUS"] ="2"; //"2"代表上班為打卡    }   if(strlen($go_work)!=0 && strlen($after_work)!=0)    {     $t["ATTENDANCE_STATUS"] ="3"; //"3"代表下班未打    }   if(strlen($go_work)==0 && strlen($after_work)==0)    {     $t["ATTENDANCE_STATUS"]= "4"; //"4"代表未出勤    }   //按考勤規則重置正常上下班時間    if(strlen($go_work) == 0 && strlen($after_work) == 0)   {    $go_work = "24:00";    $after_work = "00:00";//未出勤按子時計算   }   if(strlen($go_work) == 0 && strlen($after_work)!=0)   {    $t["ATTENDANCE_GO_WORK"] = $go_work = "08:35";//上班未打卡按08:35開始計算   }   if(strlen($go_work) != 0 && strlen($after_work) == 0)   {    $t["ATTENDANCE_AFTER_WORK"] = $after_work = "17:30"; //下班為打卡按17:30計算   }   //計算在勤時間   $minutes;//保存分鐘段   $hours;//保存小時段   $real_time1 = explode(":",$go_work);//上班時間分割數組   $real_time2 = explode(":",$after_work);//下班時間分割數組   //開始處理在勤時間   $minutes=intval(intval($real_time2[1])-intval($real_time1[1]));    if($minutes<0)     {     $hours=intval(intval(($real_time2[0])-1)-intval($real_time1[0]));     if($hours<=0)     {      $hours=intval((intval($real_time2[0])-1)-intval($real_time1[0])+24);      }     $minutes=intval(intval($real_time2[1])+60-intval($real_time1[1]));     $attendance_time = sprintf("%02d", $hours).":".sprintf("%02d", $minutes);     }    else     {     $hours =intval(intval($real_time2[0])-intval($real_time1[0]));     if($hours<=0)     {      $hours = intval(intval($real_time2[0])-intval($real_time1[0])+24);     }     if($minutes>=10 && $minutes<60) //開始選用strlen判斷字符長度補齊位,現在直接用格式化輸出,原結構不變。     {$attendance_time = sprintf("%02d", $hours).":".sprintf("%02d", $minutes);}     else     {      $attendance_time = sprintf("%02d", $hours).":".sprintf("%02d", $minutes);     }     }    // 更正未出勤時間情況,去除午休時間的在勤時間    if($attendance_time=="-1:00")    {     $attendance_time="00:00";    }   $t["ATTENDANCE_TIME"]=$attendance_time;//保存在勤時間   $attendance->create($t);//存入數據庫  }//  print_r("數據導入成功")."<br>";  //原始csv文件數據備份,文件保存在系統的./uploadfiles/文件夾下  switch ($file_error)  {  case 0:   Echo "考勤數據更新成功"."<br>"; break;  case 1:   Echo "上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值."."<br>"; break;  case 2:   Echo "上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。"."<br>"; break;  case 3:   Echo "文件只有部分被上傳"."<br>";break;  case 4:   Echo "沒有文件被上傳"."<br>";break;  case 6:   Echo "找不到臨時文件夾"."<br>";break;  case 7:   Echo "文件寫入失敗"."<br>";break;  }  echo "<br>";//  exit();//  $absolutdir=$_SERVER[DOCUMENT_ROOT ].$uploaddir.$file_name;  if ($_FILES["upload_file"]['error']==0)  { //echo $file_tmp_name;   //echo $this->uploaddir.$_FILES['upload_file']['name'];   //$name=time();   if( move_uploaded_file($file_tmp_name, $this->uploaddir.$_FILES['upload_file']['name']))    {    echo '原始數據備份成功';     }   else    {    echo '備份原始數據失敗';    }  } }}?>
 


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产免费福利视频 | 他也色在线视频 | 中文字幕综合在线观看 | 日本黄色不卡视频 | 久久嗨 | 久久精品视频日本 | 369看片你懂的小视频在线观看 | 免费国产羞羞网站视频 | 亚洲精品一区二区三区大胸 | 欧美在线一级 | 久久噜噜噜精品国产亚洲综合 | 久久久久中文字幕 | 精品一区二区久久久久久按摩 | 国产欧美亚洲精品 | 久久国产精品久久久久久 | 成人三级电影网址 | 色婷婷一区二区三区 | av免费在线播放网址 | 欧美成人精品欧美一级乱黄 | 一区二区三区视频在线 | 成人精品aaaa网站 | 国产精品成人一区二区三区吃奶 | 717影院理论午夜伦八戒秦先生 | 欧美日韩一区,二区,三区,久久精品 | 一级α片免费看刺激高潮视频 | 久久亚洲精品久久国产一区二区 | 又黄又爽又色无遮挡免费 | 国产亚洲精品久久午夜玫瑰园 | 欧美18一19sex性护士农村 | 水卜樱一区二区av | 99精品视频在线观看免费 | 欧美特一级片 | 日韩大片在线永久观看视频网站免费 | 九九精品影院 | 欧美亚洲国产成人 | 手机在线看片国产 | 羞羞色在线观看 | 久久久久一区二区三区 | 天使萌一区二区三区免费观看 | av在线免费播放 | 国产69精品久久久久99尤 |