织梦php导入excel表到mysql数据库的方法

下载PHPExcel,解压到目录PHPExcel。下载地址:https://pan.baidu.com/s/1cd9a7gRGKDhLJSwcUv_5yg 密码:7z87

 

php导入excel到mysql的方法

引用连接数据库文件和PHPExcel文件,在php文件上面加上代码

1
2
3
4
5
6
7
8
9
10
11
12
include("conn.php"); 
 require_once './PHPExcel/PHPExcel.php';
    require_once './PHPExcel/PHPExcel/IOFactory.php';
    require_once './PHPExcel/PHPExcel/Reader/Excel5.php';
php导入excel到mysql的方法
这里是导入excel2007 的xlsx格式,如果是2003格式可以把“excel2007”换成“Excel5",$excelpath是你的excel路径。
$objReader = PHPExcel_IOFactory::createReader('excel2007'); //use Excel5 for 2003 format 
$excelpath='myexcel.xlsx';
$objPHPExcel = $objReader->load($excelpath); 
    $sheet = $objPHPExcel->getSheet(0); 
    $highestRow = $sheet->getHighestRow();           //取得总行数 
$highestColumn = $sheet->getHighestColumn(); //取得总列数

织梦php导入excel表到mysql数据库的方法

(此图片来源于网络,如有侵权,请联系删除! )

逐行循环读取excel,并加入分隔符。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
for($j=2;$j<=$highestRow;$j++)                        //从第二行开始读取数据
    { 
$str="";
        for($k='A';$k<=$highestColumn;$k++)            //从A列读取数据
         { 
             $str .=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().'|*|';//读取单元格
         } 
$str=mb_convert_encoding($str,'GBK','auto');//根据自己编码修改
$strs = explode("|*|",$str);
// echo $str . "<br />";
            $sql = "insert into test (title,content,sn,num) values ('{$strs[0]}','{$strs[1]}','{$strs[2]}','{$strs[3]}')";
//echo $sql;
            if(!mysql_query($sql,$conn))
            {
               echo 'excel err';
            }
}

 

数据库连接文件conn.php,根据自己数据库填写

<?php

$conn=mysql_connect("localhost","root","123456") or die("数据库服务器连接错误".mysql_error());

     mysql_select_db("temp",$conn) or die("数据库访问错误".mysql_error());

 mysql_query("set character set gb2312");

     mysql_query("set names gb2312");

?>

导入效果图

织梦php导入excel表到mysql数据库的方法

(此图片来源于网络,如有侵权,请联系删除! )

全部代码,注释部分可以调试
 

  <?php  include("conn.php");    require_once './PHPExcel/PHPExcel.php';      require_once './PHPExcel/PHPExcel/IOFactory.php';      require_once './PHPExcel/PHPExcel/Reader/Excel5.php';  $objReader = PHPExcel_IOFactory::createReader('excel2007'); //use Excel5 for 2003 format   $excelpath='myexcel.xlsx';  $objPHPExcel = $objReader->load($excelpath);       $sheet = $objPHPExcel->getSheet(0);       $highestRow = $sheet->getHighestRow();           //取得总行数   $highestColumn = $sheet->getHighestColumn(); //取得总列数  for($j=2;$j<=$highestRow;$j++)                        //从第二行开始读取数据      {   $str="";          for($k='A';$k<=$highestColumn;$k++)            //从A列读取数据           {                $str .=$objPHPExcel->getActiveSheet()->getCell("$k$j")->getValue().'|*|';//读取单元格           }   $str=mb_convert_encoding($str,'GBK','auto');//根据自己编码修改  $strs = explode("|*|",$str);  //echo $str . "<br />";  //exit;              $sql = "insert into test (title,content,sn,num) values ('{$strs[0]}','{$strs[1]}','{$strs[2]}','{$strs[3]}')";  //echo $sql;  //exit;              if(!mysql_query($sql,$conn))              {                 echo 'excel err';              }  }  ?>

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容