登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

pcwanli的博客

nx

 
 
 

日志

 
 

使用PHPExcel导入Excel到MySql  

2010-12-08 21:58:23|  分类: php |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

PHPExcel的下载地址:官方站点: http://www.codeplex.com/PHPExcel

1.连接数据库的connection.php文件

<?
//修改下面代码来联接数据库
// mysql_connect打开一个到 MySQL 服务器的连接,如果成功则返回一个 MySQL 连接标识,失败则返回 FALSE。
$mysql=mysql_connect("localhost","root","root");//integer mysql_connect(主机,用户名,口令);
mysql_select_db("test",$mysql);//boolean mysql_select_db(数据库名,连接号);
mysql_query("set names GBK");//这就是指定数据库字符集,一般放在连接数据库后面就系了
?>

2.页面调用

<? require("connection.php"); ?>

<? require("ZGJX_UpLoad_Excel.php"); ?>

<?

if($leadExcel == "true")
{

//获取上传的文件名
$filename = $HTTP_POST_FILES['inputExcel']['name'];

//上传到服务器上的临时文件名
$tmp_name = $_FILES['inputExcel']['tmp_name'];
$msg = uploadFile($filename,$tmp_name);
}

?>

<form name="form2" method="post" enctype="multipart/form-data">
<input type="hidden" name="leadExcel" value="true">
<table align="center" width="90%" border="0">
<tr>
   <td>
    <input type="file" name="inputExcel"><input type="submit" value="导入数据">
   </td>
</tr>
</table>
</form>

3.导入的ZGJX_UpLoad_Excel.php文件

<? require("connection.php"); ?>
<?
//导入Excel文件
function uploadFile($file,$filetempname)
{

//自己设置的上传文件存放路径
$filePath = 'upFile/';
$str = "";  

//下面的路径按照你PHPExcel的路径来修改
set_include_path('.'. PATH_SEPARATOR .   
      'D:\xampp\htdocs\XM1\PHPExcel' . PATH_SEPARATOR .   
       get_include_path());
      
require_once 'PHPExcel.php';
require_once 'PHPExcel\IOFactory.php';
require_once 'PHPExcel\Reader\Excel5.php';

$filename=explode(".",$file);//把上传的文件名以“.”好为准做一个数组。
$time=date("y-m-d-H-i-s");//去当前上传的时间
$filename[0]=$time;//取文件名t替换
$name=implode(".",$filename); //上传后的文件名
$uploadfile=$filePath.$name;//上传后的文件名地址

  
//move_uploaded_file() 函数将上传的文件移动到新位置。若成功,则返回 true,否则返回 false。
    $result=move_uploaded_file($filetempname,$uploadfile);//假如上传到当前目录下
    if($result) //如果上传文件成功,就执行导入excel操作
    {
   $objReader = PHPExcel_IOFactory::createReader('Excel5');//use excel2007 for 2007 format
   $objPHPExcel = $objReader->load($uploadfile);
   $sheet = $objPHPExcel->getSheet(0);
   $highestRow = $sheet->getHighestRow(); // 取得总行数
   $highestColumn = $sheet->getHighestColumn(); // 取得总列数
    

//循环读取excel文件,读取一条,插入一条
   for($j=2;$j<=$highestRow;$j++)
   {
    for($k='A';$k<=$highestColumn;$k++)
    {
     $str .= iconv('utf-8','gbk',$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue()).'\\';//读取单元格
    }
    //explode:函数把字符串分割为数组。
    $strs = explode("\\",$str);
    $sql = "INSERT INTO tab_zgjx_award (jx_name,jx_degree,jx_item_name,jx_unit,dy_originator,de_originator,xm_intro,hj_item_id) VALUES('".
    $strs[0]."','".    //奖项名称
    $strs[1]."','".    //奖项届次
    $strs[2]."','".    //获奖项目名
    $strs[3]."','".    //获奖单位
    $strs[4]."','".    //第一发明人
    $strs[5]."','".    //第二发明人
    $strs[6]."','".    //项目简介
    $strs[7]."')";     //获奖项目编号
     
    mysql_query("set names GBK");//这就是指定数据库字符集,一般放在连接数据库后面就系了
    if(!mysql_query($sql))
    {
     return false;
    }
    $str = "";
   }
  
   unlink($uploadfile); //删除上传的excel文件
   $msg = "导入成功!";
    }
    else
    {
   $msg = "导入失败!";
    }

return $msg;
}
?>

  评论这张
 
阅读(2968)| 评论(4)

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018