使用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:导入数据 原理:读取文件,获取文 ...
随机推荐
- 火狐浏览器,关闭ssl v3防护
某些网站,没有及时更新,导致火狐觉得有安全隐患,不给访问. --------------- Hello bcasey9090, go to about:config, copy the next bo ...
- SDL播放声音
extern "C" { #include <libavcodec/avcodec.h> #include <libavformat/avformat.h> ...
- 【GoLang】GoLang UTF8 与 Unicode
结论: 通用的UTF8编码可是Ken Thompson和Rob Pike共同发明的, 他们都是Go的作者. Go中rune对应unicode的码点, string只是UTF8编码.len(" ...
- [20160707]Java中如何关闭Frame窗口
用户类继承自WindowAdapter,而窗口对象Frame作为用户类的数据成员. 1 import java.awt.*; import java.awt.event.*; public class ...
- Sum of Left Leaves
Find the sum of all left leaves in a given binary tree. Example: 3 / \ 9 20 / \ 15 7 There are two l ...
- ACM/ICPC 之 双向链表_构造列表-模拟祖玛 (TSH OJ-Zuma(祖玛))
这一题是TsingHua OJ上的一道题目,学堂在线的一位数据结构老师的题目(原创),所以我直接把题目先贴下来了,这道题对复习双向链表很有帮助,而且也对数据结构中List,也就是对列表的回顾也是很有帮 ...
- 22. javacript高级程序设计-高级技巧
1. 高级技巧 1.1 函数 l 可以使用惰性载入函数,将任何分支推迟到第一个调用函数的时候 l 函数绑定可以让你创建始终在指定环境中运行的函数,同时函数柯里化可以让你创建已经填写了某些参数的函数 l ...
- 迷宫问题_BFS_挑战程序设计竞赛p34
给定一个N*M的迷宫,求从起点到终点的最小步数. N,M<100: 输入: 10 10#S######.#......#..#.#.##.##.#.#........##.##.####.... ...
- 后台子线程(非主线程)更新UI引起的警告
一.问题描述 -(void)sendAsynchronousRequest { NSLog(@"%@",[NSThread currentThread]); [SVProgress ...
- 【leetcode】Minimum Path Sum(easy)
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...