博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用phpexcelreader将excel文件读入到mysql中(转载)
阅读量:4507 次
发布时间:2019-06-08

本文共 2904 字,大约阅读时间需要 9 分钟。

 

最近要用phpexcelreader将excel文件读入到mysql中,搞了好几天,终于小有所成,拿出来与大家分享,若有不妥,还请高手多多指教。

首先创建一个库及表

<?php

/*******************************

create_db.php

**********************************/

$connect = mysql_connect("localhost","root","123456");

if (!$connect)
      echo "连接数据库失败!!";
else {
   
      $drop = mysql_query("drop database pp_enterp",$connect);
   $create = mysql_query("create database pp_enterp",$connect);//创建数据库
  
   if (!$create)
       echo "创建数据库失败!!";
   else {
  
       mysql_select_db("pp_enterp");
   
    //创建表
    $query = "CREATE TABLE shd_pp_enterp ( ";
    $query.="id int(5) auto_increment not null primary key ,";
    $query.="number char(6) not null,";
    $query.="zip_code char(12) not null,";
    $query.="province char(6) ,";
    $query.="city char(8) ,";
    $query.="address char(100) ,";
    $query.="enp_name char(100) , ";
    $query.="contact char(6) , ";
    $query.="phone_1 char(15) , ";
    $query.="phone_2 char(15) , ";
    $query.="phone_3 char(15) , ";
    $query.="phone_4 char(15) , ";
    $query.="lic_num char(15) ) default charset='gbk' ";
   
    //echo $query."<br>";
   
    $result = mysql_query($query,$connect);
   
    if (!$result)
        echo "创建表失败!!";
    else {
        echo null;
    }
   }
}
?>

然后,应用phpexcelreader将excel文件中的数据度入到mysql中,程序如下(参考了很多模板):

<?php

require_once'./create_db.php';
require_once './reader.php';

// ExcelFile($filename, $encoding);

$data = new Spreadsheet_Excel_Reader();

// Set output Encoding.

$data->setOutputEncoding('GBK');

//”data.xls”是指要导入到mysql中的excel文件

$data->read('example.xls');

@ $db = mysql_connect('localhost', 'root', '123456') or

       die("Could not connect to database.");//连接数据库

       mysql_query("set names 'GBK'");//输出中文

mysql_select_db('pp_enterp'); //选择数据库

error_reporting(E_ALL ^ E_NOTICE);

for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++) {

//以下注释的for循环打印excel表数据

/************************************************************

for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {

            echo "\"".$data->sheets[0]['cells'][$i][$j]."\",";

           }

           echo "\n";

***************************************************************/

//以下代码是将excel表数据【3个字段】插入到mysql中,根据你的excel表字段的多少,改写以下代码吧!

    $sql = "INSERT INTO shd_pp_enterp (number,zip_code,province,city,address,enp_name,contact,phone_1,phone_2,phone_3,phone_4,lic_num) VALUES ( '".

       $data->sheets[0]['cells'][$i][1]."','".

       $data->sheets[0]['cells'][$i][2]."','".

      $data->sheets[0]['cells'][$i][3]."','".

    
     $data->sheets[0]['cells'][$i][4]."','".
    
     $data->sheets[0]['cells'][$i][5]."','".
    
     $data->sheets[0]['cells'][$i][6]."','".
    
     $data->sheets[0]['cells'][$i][7]."','".
    
     $data->sheets[0]['cells'][$i][8]."','".
    
     $data->sheets[0]['cells'][$i][9]."','".
    
     $data->sheets[0]['cells'][$i][10]."','".
    
     $data->sheets[0]['cells'][$i][11]."','".
    
     $data->sheets[0]['cells'][$i][12]."')";

    echo $sql.'<br />';

       $res = mysql_query($sql,$connect);

   
    if (!$res)
        echo "<font color= red >"."第".$i."行插入数据失败!!"."</font>"."<br>";
   else {
      echo "<font color=blue>"."第".$i."行插入数据成功!!"."</font >"."<br/>";
   }

}

?>

转载于:https://www.cnblogs.com/fengzhixin/archive/2011/09/14/2176803.html

你可能感兴趣的文章
ha_innobase::open
查看>>
IIS6架构
查看>>
ELKStack-生产案例项目实战(十一)
查看>>
PHP图形处理函数试题
查看>>
幸运数
查看>>
Golang脱坑指南: goroutine(不断更新)
查看>>
nginx 3.nginx+fastcgi
查看>>
悲观与乐观
查看>>
[转载]:Invoke and BeginInvoke
查看>>
CodeForces Round 196
查看>>
Best Practices: Common Coding Issues When Using the SharePoint Object Model
查看>>
转的很好的前端html 内容
查看>>
剑指Offer--合并两个排序链表
查看>>
js判断上传图片文件大小,尺寸,格式
查看>>
服务器(Ubuntu)远程访问ipython notebook(服务器运行ipython notebook 本地浏览器访问)
查看>>
java深copy (伪深copy)【原】
查看>>
Linux 文件系统剖析
查看>>
实验三 进程调度模拟程序
查看>>
网络基础知识之————A记录和CNAME记录的区别
查看>>
zookeeper的安装配置
查看>>