首页 > 数据库 >PHP 原生EXCEL传入数据库

PHP 原生EXCEL传入数据库

时间:2023-01-06 21:45:50浏览次数:48  
标签:原生 sheet name gender EXCEL file PHPExcel PHP row

1.下载PHPExcel-1.8

下载地址:https://codeload.github.com/PHPOffice/PHPExcel/zip/1.8

 

 

 

2.前端页面-通过form表单提交

 必须设置enctype="multipart/form-data"
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form action="./a.php" method="post" enctype="multipart/form-data">
    <input type="file" name="file">EXCEL上传
    <input type="submit">
</form>
</body>
</html>

3.php操作页面

<?php
/*
 * PDO连接数据库
 */
$dsn = 'mysql:dbname=brick;host=127.0.0.1';
$user = 'root';
$password = 'root';
try {
    $pdo = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
    echo 'Connection failed: ' . $e->getMessage();
}
/*
 * 引入PHPexcel包
 */
require_once("./PHPExcel-1.8/Classes/PHPExcel/IOFactory.php");

$file = $_FILES;
//临时文件存放路径
$fileTmp = $file['file']['tmp_name'];
$fileSize = $file['file']['size'];
$fileName = $file['file']['name'];
//错误,输出0,表示文件提交成功
$fileError = $file['file']['error'];
$inputFileName = $fileTmp;


if ($fileError == 0) {
    date_default_timezone_set('PRC');
    try {
        $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
        $objReader = PHPExcel_IOFactory::createReader($inputFileType);
        $objPHPExcel = $objReader->load($inputFileName);
    } catch (Exception $e) {


    }
}

// 确定要读取的sheet,什么是sheet,看excel的右下角
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestRow();//行数
$highestColumn = $sheet->getHighestColumn();//列数
// 把数据处理后存入数组
for ($row = 2; $row <= $highestRow; $row++) {
    $rowData[] = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, NULL, TRUE, TRUE);
}
/*
 * $rowData是一个三维数组
 * 所以遍历两次
 */
foreach ($rowData as $row)
{
    foreach ($row as $v)
    {
        $name = $v['0'];
        $age = $v['1'];
        $gender = $v['2'];
        $class = $v['3'];
$sql = "insert into excel (name,age,gender,class) values ('$name',$age,'$gender','$class')"; $pp=$pdo->exec($sql); if($pp) echo "添加成功"; else echo "添加失败"; } }

4.代码例子

 

数据库信息

 

 

标签:原生,sheet,name,gender,EXCEL,file,PHPExcel,PHP,row
From: https://www.cnblogs.com/junwuxiao/p/17031655.html

相关文章

  • 浅谈PHP设计模式的建造者模式
    简介:建造者模式,又称之为生成器模式,属于创建型的设计模式。将一个复杂对象的构建,与它的表示分离,使得同样的构建过程可以创建不同的表示。适用场景:用于创建一些复杂的对象......
  • phpstudy 报500超时 在 httpd.conf 最后加上
    phpstudy报500超时在httpd.conf 最后加上<IfModulemod_fcgid.c>ProcessLifeTime3600FcgidProcessLifeTime9999999FcgidIOTimeout9999999FcgidConnectTimeout......
  • thinkphp6控制器、验证器、模型、service,各层写的内容
    思路:控制器:路由作用,基本访问流程,定义返回数据格式验证码:验证提交的数据模型:所有数据库表的操作(按表建,一张表的操作尽量都在同一个文件里)service:公共的逻辑 代码:控......
  • web渗透【11】phpmyadmin写shell的三种方法
    查看phpMyAdmin能否自定义导出文件目录的权限showglobalvariableslike"%secure%";//查询secure_file_priv配置  secure_file_prive=null       ......
  • excel的学习5
    打印有时,我们需要把我们的表格打印出来,于此相关的操作也有很多,今天我们来看一看1.预览列印查看我们的表格打印效果,同时也是我们进行打印的地方具体操作在文件栏->打......
  • js原生xhr请求XMLHttpRequest
    创建一个请求实例,发送请求varxhr=newXMLHttpRequest();xhr.open('GET','test.php');xhr.send();监控XMLHttpRequest对象的状态变化xhr.onreadystatechange=......
  • CAD中的表格转Excel
    1、TABLE对象表格命令:TABLEEXPORT,输出csv格式文件,excel可以打开2、由线和文字组成的表格https://baijiahao.baidu.com/s?id=1711776582706912129&wfr=spider&for=pc......
  • 原生js常用操作
    元素#创建一个元素document.createElement("a")#附加到父元素的最后pararentEle.appendChild(childEle);#查找document.getElementById("aa")document.querySel......
  • 使用ExcelJS处理Excel
    官方中文文档在浏览器环境下,用Excel.js读取excel文件使用ExcelJS的原因因为SheetJS读取样式的那一部分是收费的(具体原因是因为有人花钱找他们开发的,再免费对花钱的人......
  • excel的学习4
    excel的学习4筛选当我们想看表格中的某一类的数据时,使用筛选可以帮助我们实现这一操作第一种具体操作在开始栏->排序与筛选->筛选看箭头指的地方有一个倒三角,我们......