如何在php中使用PHPSpredsheet将Excel工作表导入mysql
在pc上安装composer.exe,在项目的命令提示符下安装phpspreadsheet,复制index.php代码,导入.php代码并粘贴到项目上 安装PHPSReadSheet如何在php中使用PHPSpredsheet将Excel工作表导入mysql,php,mysql,excel,import,phpspreadsheet,Php,Mysql,Excel,Import,Phpspreadsheet,在pc上安装composer.exe,在项目的命令提示符下安装phpspreadsheet,复制index.php代码,导入.php代码并粘贴到项目上 安装PHPSReadSheet composer require phpoffice/phpspreadsheet --prefer-source composer require phpoffice/phpspreadsheet --prefer-source 安装PHPSReadSheet composer require phpoffi
composer require phpoffice/phpspreadsheet --prefer-source
composer require phpoffice/phpspreadsheet --prefer-source
安装PHPSReadSheet
composer require phpoffice/phpspreadsheet --prefer-source
composer require phpoffice/phpspreadsheet --prefer-source
index.php
<!DOCTYPE html>
<html>
<head>
<title>Import Data From Excel or CSV File to Mysql using PHPSpreadsheet</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
</head>
<body>
<div class="container">
<br />
<h3 align="center">Import Data From Excel or CSV File to Mysql using PHPSpreadsheet</h3>
<br />
<div class="panel panel-default">
<div class="panel-heading">Import Data From Excel or CSV File to Mysql using PHPSpreadsheet</div>
<div class="panel-body">
<div class="table-responsive">
<span id="message"></span>
<form method="post" id="import_excel_form" enctype="multipart/form-data">
<table class="table">
<tr>
<td width="25%" align="right">Select Excel File</td>
<td width="50%"><input type="file" name="import_excel" /></td>
<td width="25%"><input type="submit" name="import" id="import" class="btn btn-primary" value="Import" /></td>
</tr>
</table>
</form>
<br />
</div>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
</body>
</html>
<script>
$(document).ready(function(){
$('#import_excel_form').on('submit', function(event){
event.preventDefault();
$.ajax({
url:"import.php",
method:"POST",
data:new FormData(this),
contentType:false,
cache:false,
processData:false,
beforeSend:function(){
$('#import').attr('disabled', 'disabled');
$('#import').val('Importing...');
},
success:function(data)
{
$('#message').html(data);
$('#import_excel_form')[0].reset();
$('#import').attr('disabled', false);
$('#import').val('Import');
}
})
});
});
</script>
include 'vendor/autoload.php';
$connect = mysqli_connect('localhost','root','','excel_import_db';
if($_FILES["import_excel"]["name"] != '')
{
$allowed_extension = array('xls', 'csv', 'xlsx');
$file_array = explode(".", $_FILES["import_excel"]["name"]);
$file_extension = end($file_array);
if(in_array($file_extension, $allowed_extension))
{
$file_name = time() . '.' . $file_extension;
move_uploaded_file($_FILES['import_excel']['tmp_name'], $file_name);
$file_type = \PhpOffice\PhpSpreadsheet\IOFactory::identify($file_name);
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader($file_type);
$spreadsheet = $reader->load($file_name);
unlink($file_name);
$data = $spreadsheet->getActiveSheet()->toArray();
foreach($data as $row)
{
$query = "
INSERT INTO sample_datas
(`first_name`, `last_name`, `created_at`, `updated_at`)
VALUES ('".$row[0]."', '".$row[1]."', '".$row[2]."', '".$row[3]."')
";
$statement = mysqli_query($connect,$query);
}
$message = '<div class="alert alert-success">Data Imported Successfully</div>';
}
else
{
$message = '<div class="alert alert-danger">Only .xls .csv or .xlsx file allowed</div>';
}
}
else
{
$message = '<div class="alert alert-danger">Please Select File</div>';
}
echo $message;
使用PHPSReadSheet将数据从Excel或CSV文件导入Mysql
使用PHPSReadSheet将数据从Excel或CSV文件导入Mysql
使用PHPSReadSheet将数据从Excel或CSV文件导入Mysql
选择Excel文件
$(文档).ready(函数(){
$('import_excel_form')。在('submit',函数(事件){
event.preventDefault();
$.ajax({
url:“import.php”,
方法:“张贴”,
数据:新表单数据(本),
contentType:false,
cache:false,
processData:false,
beforeSend:function(){
$('#import').attr('disabled','disabled');
$('#import').val('导入…');
},
成功:功能(数据)
{
$('#message').html(数据);
$('#导入excel_表单')[0]。重置();
$('#import').attr('disabled',false);
$('导入').val('导入');
}
})
});
});
import.php
<!DOCTYPE html>
<html>
<head>
<title>Import Data From Excel or CSV File to Mysql using PHPSpreadsheet</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" />
</head>
<body>
<div class="container">
<br />
<h3 align="center">Import Data From Excel or CSV File to Mysql using PHPSpreadsheet</h3>
<br />
<div class="panel panel-default">
<div class="panel-heading">Import Data From Excel or CSV File to Mysql using PHPSpreadsheet</div>
<div class="panel-body">
<div class="table-responsive">
<span id="message"></span>
<form method="post" id="import_excel_form" enctype="multipart/form-data">
<table class="table">
<tr>
<td width="25%" align="right">Select Excel File</td>
<td width="50%"><input type="file" name="import_excel" /></td>
<td width="25%"><input type="submit" name="import" id="import" class="btn btn-primary" value="Import" /></td>
</tr>
</table>
</form>
<br />
</div>
</div>
</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
</body>
</html>
<script>
$(document).ready(function(){
$('#import_excel_form').on('submit', function(event){
event.preventDefault();
$.ajax({
url:"import.php",
method:"POST",
data:new FormData(this),
contentType:false,
cache:false,
processData:false,
beforeSend:function(){
$('#import').attr('disabled', 'disabled');
$('#import').val('Importing...');
},
success:function(data)
{
$('#message').html(data);
$('#import_excel_form')[0].reset();
$('#import').attr('disabled', false);
$('#import').val('Import');
}
})
});
});
</script>
include 'vendor/autoload.php';
$connect = mysqli_connect('localhost','root','','excel_import_db';
if($_FILES["import_excel"]["name"] != '')
{
$allowed_extension = array('xls', 'csv', 'xlsx');
$file_array = explode(".", $_FILES["import_excel"]["name"]);
$file_extension = end($file_array);
if(in_array($file_extension, $allowed_extension))
{
$file_name = time() . '.' . $file_extension;
move_uploaded_file($_FILES['import_excel']['tmp_name'], $file_name);
$file_type = \PhpOffice\PhpSpreadsheet\IOFactory::identify($file_name);
$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader($file_type);
$spreadsheet = $reader->load($file_name);
unlink($file_name);
$data = $spreadsheet->getActiveSheet()->toArray();
foreach($data as $row)
{
$query = "
INSERT INTO sample_datas
(`first_name`, `last_name`, `created_at`, `updated_at`)
VALUES ('".$row[0]."', '".$row[1]."', '".$row[2]."', '".$row[3]."')
";
$statement = mysqli_query($connect,$query);
}
$message = '<div class="alert alert-success">Data Imported Successfully</div>';
}
else
{
$message = '<div class="alert alert-danger">Only .xls .csv or .xlsx file allowed</div>';
}
}
else
{
$message = '<div class="alert alert-danger">Please Select File</div>';
}
echo $message;
包括“vendor/autoload.php”;
$connect=mysqli\u connect('localhost','root','','excel\u import\u db';
如果($_文件[“导入\u excel”][“名称”]!=”)
{
$allowed_extension=数组('xls','csv','xlsx');
$file\u array=explode(“.”,$\u FILES[“import\u excel”][“name”]);
$file\u extension=end($file\u数组);
if(在数组中($file\u扩展名,$allowed\u扩展名))
{
$file\u name=time()...$file\u扩展名;
移动上传的文件($文件['import\u excel']['tmp\u name'],$file\u name);
$file\u type=\PhpOffice\PhpSpreadsheet\IOFactory::identify($file\u name);
$reader=\PhpOffice\PhpSpreadsheet\IOFactory::createReader($file\u type);
$spreadsheet=$reader->load($file\u name);
取消链接($file\u name);
$data=$spreadsheet->getActiveSheet()->toArray();
foreach($行数据)
{
$query=”
插入到样本数据中
(`first_name`、`last_name`、`created_at`、`updated_at`)
值(“%$row[0]”、“%$row[1]”、“%$row[2]”、“%$row[3]”)
";
$statement=mysqli_query($connect,$query);
}
$message='Data Imported Successfully';
}
其他的
{
$message='只允许.xls.csv或.xlsx文件';
}
}
其他的
{
$message='请选择文件';
}
回声$信息;