使用PHPExcel导入Excel到MySql
.连接数据库的connection.php文件
<?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"); //这就是指定数据库字符集,一般放在连接数据库后面就系了
?>
.页面调用
<?php
require("connection.php");
require("UpLoad_Excel.php");
if($leadExcel == "true")
{
//获取上传的文件名
$filename = $HTTP_POST_FILES['inputExcel']['name'];
//上传到服务器上的临时文件名
$tmp_name = $_FILES['inputExcel']['tmp_name'];
$msg = uploadFile($filename,$tmp_name);
}
?>
<form 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>
.导入的UpLoad_Excel.php文件
<?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;
}
?>
使用PHPExcel导入Excel到MySql的更多相关文章
- 使用phpExcel导入Excel进入Mysql数据库
1.http://phpexcel.codeplex.com/下载phpExcel 2. <? require_once 'PHPExcel.php'; require_once 'PHPExc ...
- Thinkphp 用PHPExcel 导入Excel
搞了个简单的Excel导入, 用的是PHPExcel(百科:用来操作Office Excel文档的一个PHP类库, 基于微软的OpenXML标准和PHP语言) 好, 不说了, 开始吧... 首先得有P ...
- phpexcel导入excel文件报the filename xxx is not recognised as an OLE file错误。
工作中频繁会用phpexcel类导入excel文件的数据到数据库,目前常用的excel文件格式有:xls.csv.xlsx. 刚开始,针对xls文件,使用如下程序,能正常运行: $objReader ...
- YII使用PHPExcel导入Excel文件的方法
1.下载phpexcel,将压缩包中的classes复制到protected/extensions下并修改为PHPExcel. 2.修改YII配置文件config/main.php 'import'= ...
- thinkphp整合系列之phpexcel导入excel数据
一:导入phpexcel /ThinkPHP/Library/Vendor/PHPExcel 二:导入excel的函数 /** * 导入excel文件 * @param string $file ex ...
- 使用phpexcel导入excel文件种的时期数据时数据导入格式
在使用phpexcel导入类似于 YYYY-MM-DD HH:ii:ss格式的数据时,导入成功以后会发现导入的数据其实是类似于42085.746516204格式的数据( excel在存储时间类型的数据 ...
- phpexcel导入excel表格
html代码 <form action="{:U('Mall/updExcel')}" method="POST" enctype="multi ...
- thinkphp5使用PHPExcel导入Excel数据
安装PHPExcel扩展类 地址:https://github.com/PHPOffice/PHPExcel ①通过composer安装 ②手动下载, 放在项目的extend目录下 代码中引入 由于P ...
- PHPExcel 导入Excel数据 (导出下一篇我们继续讲解)
一:使用composer下载 phpoffice/phpexcel 或者直接下载安装包 composer require phpoffice/phpexcel 二 1:导入数据 原理:读取文件,获取文 ...
随机推荐
- Dom终
l创建DOM元素 •createElement(标签名) 创建一个节点 •appendChild(节点) 追加一个节点 –例子:为ul插入li <!DOCTYPE html PUBLIC & ...
- Java中流的概念
http://wapwenku.baidu.com/view/04714847b307e87101f69656.html?ssid=0&from=1086k&uid=0&pu= ...
- nginx泛域名解析实现二级域名多域名
利用nginx泛域名解析配置二级域名和多域名 网站的目录结构为html├── bbs└── www html为nginx的安装目录下默认的存放源代码的路径. bbs为论坛程序源代码路径www为主页程序 ...
- 蓝牙模块连接后出现ANR,日志记录
11-25 16:29:48.433 14507-14561/myapplication.com.myblue W/MALI: glDrawArrays:714: [MALI] glDrawArray ...
- [转]servlet的执行原理与生命周期
一.先从servlet容器说起:大家最为熟悉的servlet容器就是Tomcat ,Servlet 容器是如何管理 Servlet? 先看一下tomcat的容器模型: 从上图可以看出 Tomcat 的 ...
- delphi XE5下安卓开发技巧
delphi XE5下安卓开发技巧 一.手机快捷方式显示中文名称 project->options->Version Info-label(改成需要显示的中文名即可),但是需要安装到安卓手 ...
- Effective C++ -----条款49:了解new-handler 的行为
set_new_handler允许客户指定一个函数,在内存分配无法获得满足时被调用. Nothorw new 是一个颇为局限的工具,因为它只适用于内存分配:后继的构造函数调用还是可能抛出异常.
- 【leetcode】 Interleaving String (hard)
Given s1, s2, s3, find whether s3 is formed by the interleaving of s1 and s2. For example,Given:s1 = ...
- IOS - socket 编程初体验
#import "ViewController.h" @interface ViewController () <NSStreamDelegate, UITextFieldD ...
- IOS- 内存管理机制
iOS平台内存常见问题 作为iOS平台的开发者,是否曾经为内存问题而苦恼过?内存莫名的持续增长,程序莫名的crash,难以发现 的内存泄漏,这些都是iOS平台内存相关的常见问题:本文将会详细介绍iOS ...