如何使用php将excel文件导入mysql数据库?
我想把用户数据上传到mysql数据库。为此,我想使用php将excel数据导入mysql数据库。我已经写了代码。但我面临一个错误。我提供我的代码供参考。我的代码如下如何使用php将excel文件导入mysql数据库?,php,mysql,excel,Php,Mysql,Excel,我想把用户数据上传到mysql数据库。为此,我想使用php将excel数据导入mysql数据库。我已经写了代码。但我面临一个错误。我提供我的代码供参考。我的代码如下 include 'config.php'; require_once 'Excel/reader.php'; $allowedExts = array("xls","xlsx"); $temp = explode(".", $_FILES["file"]["name"]); if (($_FILES["file"]["size
include 'config.php';
require_once 'Excel/reader.php';
$allowedExts = array("xls","xlsx");
$temp = explode(".", $_FILES["file"]["name"]);
if (($_FILES["file"]["size"] < 20000)&& (in_array($extension, $allowedExts)))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br>";
}
else
{
$filename=$_FILES["file"]["name"] ;
$filetype=$_FILES["file"]["type"] ;
$filesize=$_FILES["file"]["size"] ;
$filetemp=$_FILES["file"]["tmp_name"];
//////////////////////////
$row=0;
$handle = fopen($filetemp, "r");
$data = new Spreadsheet_Excel_Reader();
$data->read($filetemp);
我在屏幕上显示了这个错误:
php28E.tmp不可读
请帮我回答这个问题。PHP手册上说():
默认情况下,文件将存储在服务器的默认临时目录中,除非php.ini中的upload_tmp_dir指令提供了另一个位置
[……]
无论逻辑如何,您都应该从临时目录中删除该文件或将其移动到其他位置
[……]
在使用上载的文件之前,应使用移动该文件 您可以改用phpexcel,它可以完美地工作,还支持各种电子表格格式,并且有很好的文档记录。 下载地址为。 谷歌上有很多提示和教程 此代码适用于我:
<?php
$newPath = __DIR__.'/'.basename($_FILES['filepath']['tmp_name']);
move_uploaded_file($_FILES['filepath']['tmp_name'], $newPath);
$objPHPExcel = PHPExcel_IOFactory::load($newPath);
............................
该文件实际上是BIFF或OfficeOpenXML格式的Excel文件,还是具有xls扩展名的CSV文件?在上面的行中打开该文件是否会阻止电子表格\u Excel\u阅读器读取该文件本身?你为什么要打开它?如果你移动你上传的文件并给它一个xls扩展名,那么电子表格\u Excel\u Reader真的可以读取文件吗?@Mark Baker我需要导入的文件是纯Excel文件,不是存储在Excel中的CSV文件。对不起,你的问题是关于上传文件。。。但我认为PhpExcel是管理excel文件的更好的解决方案…谁提出了错误?PHP或您的excel库,可能是您的上载代码没问题,问题是您的excel库无法正确读取excel格式,或者您的apache服务器需要文件权限……是的,是的,您是对的。我的问题是excel库。你能给我提供使用php将excel导入mysql的教程链接吗。请告诉我这很紧急。
<?php
$newPath = __DIR__.'/'.basename($_FILES['filepath']['tmp_name']);
move_uploaded_file($_FILES['filepath']['tmp_name'], $newPath);
$objPHPExcel = PHPExcel_IOFactory::load($newPath);
............................