PHP如何上传Excel文件导入数据到MySQL数据库
发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,这篇文章主要为大家展示了"PHP如何上传Excel文件导入数据到MySQL数据库",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"PHP如何上传Excel文件
千家信息网最后更新 2025年02月22日PHP如何上传Excel文件导入数据到MySQL数据库
这篇文章主要为大家展示了"PHP如何上传Excel文件导入数据到MySQL数据库",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"PHP如何上传Excel文件导入数据到MySQL数据库"这篇文章吧。
最近在做Excel文件导入数据到数据库。网站如果想支持批量插入数据,可以制作一个上传Excel文件,导入里面的数据内容到MySQL数据库的小程序。
要用到的工具:
ThinkPHP:轻量级国产PHP开发框架。可在ThinkPHP官网下载。
PHPExcel:Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可在CodePlex官网下载。、
1.设计MySQL数据库product
创建product数据库
CREATE DATABASE product DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
创建pro_info表,表结构
CREATE TABLE pro_info(pId int(4) NOT NULL PRIMARY KEY AUTO_INCREMENT,pName varchar(20) NOT NULL,pPrice float NOT NULL,pCount float NOT NULL);
2.生成项目
先在ThinkPHP同级目录下新建index.php文件,生成项目Home.
3.上传文件表单
在Home/Tpl文件夹下新建Index文件夹,里面新建index.html文件
上传文件
4.在/Home/Lib/Action/IndexAction.class.php中编写显示上传表单页面、上传Excel文件、导入Excel文件方法(如果ThinkPHP/Extend下没有扩展包,需要在ThinkPHP官网下载,然后将扩展包解压放入)
display(); } /** * 上传Excel文件 */ public function upload() { //引入ThinkPHP上传文件类 import('ORG.Net.UploadFile'); //实例化上传类 $upload = new UploadFile(); //设置附件上传文件大小200Kib $upload->mixSize = 2000000; //设置附件上传类型 $upload->allowExts = array('xls', 'xlsx', 'csv'); //设置附件上传目录在/Home/temp下 $upload->savePath = './Home/temp/'; //保持上传文件名不变 $upload->saveRule = ''; //存在同名文件是否是覆盖 $upload->uploadReplace = true; if (!$upload->upload()) { //如果上传失败,提示错误信息 $this->error($upload->getErrorMsg()); } else { //上传成功 //获取上传文件信息 $info = $upload->getUploadFileInfo(); //获取上传保存文件名 $fileName = $info[0]['savename']; //重定向,把$fileName文件名传给importExcel()方法 $this->redirect('Index/importExcel', array('fileName' => $fileName), 1, '上传成功!'); } } /** * * 导入Excel文件 */ public function importExcel() { header("content-type:text/html;charset=utf-8"); //引入PHPExcel类 vendor('PHPExcel'); vendor('PHPExcel.IOFactory'); vendor('PHPExcel.Reader.Excel5'); //redirect传来的文件名 $fileName = $_GET['fileName']; //文件路径 $filePath = './Home/temp/' . $fileName . '.xlsx'; //实例化PHPExcel类 $PHPExcel = new PHPExcel(); //默认用excel2007读取excel,若格式不对,则用之前的版本进行读取 $PHPReader = new PHPExcel_Reader_Excel2007(); if (!$PHPReader->canRead($filePath)) { $PHPReader = new PHPExcel_Reader_Excel5(); if (!$PHPReader->canRead($filePath)) { echo 'no Excel'; return; } } //读取Excel文件 $PHPExcel = $PHPReader->load($filePath); //读取excel文件中的第一个工作表 $sheet = $PHPExcel->getSheet(0); //取得最大的列号 $allColumn = $sheet->getHighestColumn(); //取得最大的行号 $allRow = $sheet->getHighestRow(); //从第二行开始插入,第一行是列名 for ($currentRow = 2; $currentRow <= $allRow; $currentRow++) { //获取B列的值 $name = $PHPExcel->getActiveSheet()->getCell("B" . $currentRow)->getValue(); //获取C列的值 $price = $PHPExcel->getActiveSheet()->getCell("C" . $currentRow)->getValue(); //获取D列的值 $count = $PHPExcel->getActiveSheet()->getCell("D" . $currentRow)->getValue(); $m = M('Info'); $num = $m->add(array('pName' => $name, 'pPrice' => $price, 'pCount' => $count)); } if ($num > 0) { echo "添加成功!"; } else { echo "添加失败!"; } } }?>
5.测试
以上是"PHP如何上传Excel文件导入数据到MySQL数据库"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
文件
数据
数据库
内容
文件名
成功
篇文章
附件
最大
信息
可在
实例
文件夹
方法
目录
表单
项目
学习
帮助
生成
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库表名命名table
数据和网络安全自查汇总表
dns服务器不
大连接网络技术
网络安全考试题库及答案大全
数据库技术在金融行业的应用
云服务器里可以处理数据吗
mysql 数据库原理
数据库安全 大数据
数据库加密的软件
丹徒宜和网络安全
数据库删除是什么
国家网络安全网红
数据库乐观锁出现回滚问题
数据库最小连接
vc同花顺数据库
联盟聊天服务器断了
贵州科信网络安全平台
深圳正规网络技术开发展示
浙江智能软件开发价钱
商标数据库技术分析
绍兴提花系统软件开发商
手机应用软件开发哪家专业
网络安全保密会
手机网络安全证书在哪里
vlt云服务器
计算机网络技术三级考试时间
通付盾 计算网络安全
打王者掉帧是不是服务器的问题
黄冈电信网络安全宣传