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;            } ?>

PHP把excel导入mysql数据库最常用的方法的更多相关文章

  1. 将Excel数据导入mysql数据库的几种方法

    将Excel数据导入mysql数据库的几种方法 “我的面试感悟”有奖征文大赛结果揭晓! 前几天需要将Excel表格中的数据导入到mysql数据库中,在网上查了半天,研究了半天,总结出以下几种方法,下面 ...

  2. xlrd(excel导入mysql数据库)

    一.xlrd模块: python 对 excel 文件进行读操作 1.下载xlrd 并安装 http://pypi.python.org/pypi/xlrd wget https://pypi.pyt ...

  3. Excel导入mysql数据库

    步骤一:选取要导入的数据快儿,另外要多出一列,如下图:    步骤二:  将选中的数据快儿拷贝到一个新建的表格工作薄,然后“另存为” ->“文本文件(制表符分割)(*.txt)”,假如存到“D: ...

  4. 【MySQL笔记】Excel数据导入Mysql数据库的实现方法——Navicat

    很多公司尤其有点年头的公司,财务业务部门的各种表单都是excel来做的表格,随着互联网的发展各种业务流程都电子化流程化了,再在茫茫多的文档中去查找某一个年份月份的报告是件相当枯燥的事,所以都在想办法将 ...

  5. Excel表格导入Mysql数据库,一行存入多条数据的前后台完整实现思路(使用mybatis框架)

    现在有一张Excel表格: 存入数据库时需要这样存放: 现在需要将Excel表格做处理,将每一行拆分成多条数据存入数据库. 1.首先在前台jsp页面画一个按钮:,加入点击事件: <td styl ...

  6. SpringMVC文件上传 Excle文件 Poi解析 验证 去重 并批量导入 MYSQL数据库

    SpringMVC文件上传 Excle文件 Poi解析并批量导入 MYSQL数据库  /** * 业务需求说明: * 1 批量导入成员 并且 自主创建账号 * 2 校验数据格式 且 重复导入提示 已被 ...

  7. 把execel表数据导入mysql数据库

    今天,是我来公司第二周的第一天. 作为新入职的实习生,目前还没适合我的实质项目工作,今天的学习任务是: 把execel表数据导入到mysql数据库,再练习下java操作JDBC. 先了解下execel ...

  8. 在Linux环境下,将Solr部署到tomcat7中,导入Mysql数据库数据, 定时更新索引

    什么是solr solr是基于Lucene的全文搜索服务器,对Lucene进行了扩展优化. 准备工作 首先,去下载以下软件包: JDK8:jdk-8u60-linux-x64.tar.gz TOMCA ...

  9. (转) PowerDesigner逆向工程导入MYSQL数据库总结

    PowerDesigner逆向工程导入MySQL数据库总结 由于日常数据建模经常使用PowerDesigner,使用逆向工程能更加快速的生成模型提高效率,所以总结使用如下: 1.      安装MYS ...

随机推荐

  1. Microsoft - Find Biggest Node

    public Node findBiggest (Node n1, Node n2){ Node c1 = n1; Node c2 = n2; boolean isPositive = false; ...

  2. benthos 通过配置文件配置 stream 说明

    stream 模式,我们也可以通过配置文件进行配置 参考配置文件 input: type: http_server buffer: type: memory pipeline: threads: 4 ...

  3. C# 使用oledb 方式连接本地或者远程oracel 数据库的方式

    对于C# 进行oracle 数据库的开发来说使用oracle 提供的odp.net 方式是比较方便的,同时在性能以及兼容性也是比较好的 但是,对于不打算使用的,那么该如何使用oledb 进行连接 连接 ...

  4. socket、tcp/ip协议、udp协议

    socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求. socket起源于Un ...

  5. Apache+modproxy布置tomcat集群

    一.环境: Apache: 2.2.14: 下载地址:http://archive.apache.org/dist/httpd/binaries/win32/ Tomcat: 7.0.82 JDK1. ...

  6. JUC线程池之 Callable和Future

    Callable 和 Future 简介 Callable 和 Future 是比较有趣的一对组合.当我们需要获取线程的执行结果时,就需要用到它们.Callable用于产生结果,Future用于获取结 ...

  7. admin.ModelAdmin 后台管理关联对象,某个字段怎么显示值

    admin.ModelAdmin 后台管理关联对象,某个字段如何显示值?对象 WxpAccount:              accountName = ... 对象 AccountMenu:    ...

  8. ASP.NET Core 2.0 使用支付宝PC网站支付实现代码(转)

    最近在使用ASP.NET Core来进行开发,刚好有个接入支付宝支付的需求,百度了一下没找到相关的资料,看了官方的SDK以及Demo都还是.NET Framework的,所以就先根据官方SDK的源码, ...

  9. js中如何快速获取数组中的最大值最小值

    var a=[1,2,3,5]; alert(Math.max.apply(null, a));//最大值 alert(Math.min.apply(null, a));//最小值 多维数组可以这么修 ...

  10. RK3288 wifi模块打开或关闭5G信号

    CPU:RK3288 系统:Android 5.1 如果硬件使用的wifi模块支持5G,则系统设置中打开wifi,除了会搜索到普通的2.4G信号,还会搜索到xxx_5G信号. 如果路由器开了5G信号, ...