我知道以前也有人问过类似的问题,但我只是找不到答案来解决我的问题。具体而言,我需要:我需要读取带有.xslx扩展的导入文件,并将它们导入到MySQL表中的appropiate列中。
以下是我已经尝试过的:
$file = $_FILES['file']['tmp_name'];
$handle = fopen($file,"r");
$name = $_FILES['file']['name'];
set_include_path(get_include_path() . PATH_SEPARATOR . 'Classes/');
/** PHPExcel_IOFactory */
include '../Classes/PHPExcel/IOFactory.php';
$inputFileName = $name; // File to read
echo 'Loading file ',pathinfo($inputFileName,PATHINFO_BASENAME),' using IOFactory to identify the format<br />';
try {
$objPHPExcel = PHPExcel_IOFactory::load($inputFileName);
} catch(Exception $e) {
die('Error loading file "'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());
}
echo '<hr />';
echo "<pre>";
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);
print_r($sheetData);
/* foreach($sheetData as $rec)
{
print_r($rec);
}
*/
}我忘记提到我正在使用PHP/Excel库来执行这个任务,上面的代码正在处理这个错误:
Error loading file "jd.xlsx": Could not open jd.xlsx for reading! File does not exist我需要存储读取数据的表有3列:name、surname和email。我要求我的用户在导入该文件时必须有以下的值顺序:名称、姓氏,然后在他们的文档中发送电子邮件(就像数据库中的表结构一样)。因此,如果您有一些建议如何读取该文件并将其导入数据库,我将非常感谢。
发布于 2016-02-23 07:56:05
所有的评论都是完全正确的,我发现我犯了一个愚蠢的错误:
$inputFileName = $name;而不是这样:
$inputFileName = $file;既然是$name = $_FILES['file']['name'];和$file = $_FILES['file']['tmp_name'];
下面是我的脚本现在输出的内容:
Array
(
[1] => Array
(
[A] => First Name
[B] => Last Name
[C] => Nationality
[D] => Gender
)
[2] => Array
(
[A] => jaydeep
[B] => namera
[C] => india
[D] => M
)
[3] => Array
(
[A] => harshad
[B] => fefar
[C] => india
[D] => m
)
[4] => Array
(
[A] => jd
[B] => patel
[C] => ind
[D] => m
)
)谢谢大家对我的见解。
https://stackoverflow.com/questions/35571538
复制相似问题