PHP把excel导入mysql数据库最常用的方法

 

Posted on 2011-03-25 09:16 PHP博客 阅读(1316) 评论(0)  编辑 收藏 引用 网摘

PHP把excel(xls)文件导入mysql数据库最常用的方法就是先把xls文件导出为csv格式的文件,然后在解析csv格式的文件导入到 mysql数据库。方法比较冗余,而且分好几步进行,很不方便,今天介绍一种方法是直接把excel文件导入mysql数据库。首先我们下载PHP- ExcelReader这是一个开源的项目,主要是来解析excel的文件,下载地 址:http://sourceforge.net/projects/phpexcelreader,下载之后解压,主要用到excel文件夹里面的两 个文件reader.php和oleread.php(这个文件默认的是oleread.inc,直接改名即可)。在reader.php文件中找到以下 类似代码(第一行既是),改成正确的oleread.php路径即可:require_once 'oleread.php';然后新建一个php文件引入reader.php,代码如下:新建一个导入的表单文件(up.php): 代码如下:   
数据库连接文件(conn.php): 代码如下: 数据处理文件(insert.php) 代码如下: setOutputEncoding('UTF-8'); $data->read($Import_TmpFile); $array =array();     for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {     for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {      $array[$i][$j] = $data->sheets[0]['cells'][$i][$j];     } }sava_data($array);} function sava_data($array){        $count =0;        $total =0;     foreach( $array as $tmp){             $Isql = "Select id from alz_product  where id='".$tmp[1]."'";          $sql = "Insert into alz_product (id,lanstr,classid,topclassid,title,producttype,volt,capacity,productsize,weight,color,code,model,price,prices,bigpic,paths,filename) value(";          $sql.="'".$tmp[1]."','".$tmp[2]."','".$tmp[3]."','".$tmp[4]."','".$tmp[5]."','".$tmp[6]."','".$tmp[7]."','".$tmp[8]."','".$tmp[9]."','".$tmp[10]."','".$tmp[11]."','".$tmp[12]."','".$tmp[13]."','".$tmp[14]."','".$tmp[15]."','".$tmp[16]."','".$tmp[17]."','".$tmp[18]."')"; echo $sql."
";              if(! mysql_num_rows(mysql_query($Isql) )){          if( mysql_query($sql) ){             $count++;          }         }         $total++;     }     echo "";      }     function TtoD($text){     $jd1900 = GregorianToJD(1, 1, 1900)-2;     $myJd = $text+$jd1900;     $myDate = JDToGregorian($myJd);     $myDate = explode('/',$myDate);     $myDateStr = str_pad($myDate[2],4,'0', STR_PAD_LEFT)."-".str_pad($myDate[0],2,'0', STR_PAD_LEFT)."-".str_pad($myDate[1],2,'0', STR_PAD_LEFT);     return $myDateStr;            } ?>

posted @ 2013-12-06 19:44  jason&li  阅读(644)  评论(0编辑  收藏  举报