php基于Fleaphp框架实现cvs数据导入MySQL的办法
家电维修 2023-07-16 19:16www.caominkang.com家电维修技术
本文实例讲述了php基于Fleaphp框架实现cvs数据导入MySQL的方法。分享给大家供大家参考,具体如下
_getVie(); $smarty->display("kaoqin_upload.html"); } //显示错误 private function shoErro(){ 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->shoErro(); $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,"
"; 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']."
"."
"); //数据导入 // $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=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("数据导入成功")."
"; //原始csv文件数据备份,文件保存在系统的./uploadfiles/文件夹下 sitch ($file_error) { case 0: Echo "考勤数据更新成功"."
"; break; case 1: Echo "上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值."."
"; break; case 2: Echo "上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。"."
"; break; case 3: Echo "文件只有部分被上传"."
";break; case 4: Echo "没有文件被上传"."
";break; case 6: Echo "找不到临时文件夹"."
";break; case 7: Echo "文件写入失败"."
";break; } echo "
"; // 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相关内容感兴趣的读者可查看本站专题《php面向对象程序设计入门教程》、《php字符串(string)用法》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
电脑维修网希望本文所述对大家PHP程序设计有所帮助。
上一篇:网页右侧悬浮滚动在线qq客服代码示例
下一篇:对于织梦CMS各目录内文件的说明