|
本文实例讲述了php基于Fleaphp框架实现cvs数据导入MySQL的方法。分享给大家供大家参考,具体如下:
_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,"
";
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 && $minutescreate($t);//存入数据库
}
// print_r("数据导入成功")."
";
//原始csv文件数据备份,文件保存在系统的./uploadfiles/文件夹下
switch ($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程序设计有所帮助。
您可能感兴趣的文章:将sqlite3中数据导入到mysql中的实战教程MySQL中数据导入恢复的简单教程PHP把MSSQL数据导入到MYSQL的方法MySQL中使用load data命令实现数据导入的方法解析csv数据导入mysql的方法phpMyAdmin下将Excel中的数据导入MySql的图文方法3步搞定纯真IP数据导入到MySQL的方法详解Excel数据导入Mysql数据库的实现代码如何把ACCESS的数据导入到Mysql中MYSQL大数据导入分析Mysql大量数据导入遇到的问题以及解决方案
|
|