php网页和后台如何实现根据excel模板将本地excel数据导入到mysql数据库?(LAYUI+PHP后台)
使用layui excel或者phpExcel带上传前预览数据的都行。需要demo文件,支持xls和xlsx。
数据库的表“产品”结构为:
//建表
CREATE TABLE 产品(
id INT PRIMARY KEY AUTO_INCREMENT COMMENT 'id',
品名 VARCHAR(200) COMMENT '品名',
种类 int COMMENT '种类',
时间 VARCHAR(200) COMMENT '时间'
) COMMENT='产品信息'
前台通过js 上传excel到后台,后台再读取excel内容,解析出内容后写入数据库
前台通过 上传,后台确定接受到文件,引入php导入类和方法(不引人测无法导入,有些php框架都会自动,下面以tp举例)
$excelHeader = \Excel::parseHeader($file);//$file为接受到的人家Excel::parseHeader导入方法自己在网上下载
// 将 $excelHeader 数据抛给前端,让用户选择对应关系,然后再返回给后台进行对应数据的解析,例如抛给后台的数据如下
$header = [ 'B' => '数据库字段','B' => '数据库字段' ];
$result = \Excel::parse($file, $header, 200, function ($data) {//200是最大导入条数,自己设置
/**
* 可以在此处对数据进行过滤处理,例如:
*/
foreach ($data as $key=>$v) {
//处理数据$data为文件数据
$data[$key]['Ip_add']=strval(isset($v['Id'])?$v['Id']:'');//处理数据举例
}
Db::name('表名')->insertAll($data);
});
}