JavaScript — этот код загружает только CSV-файл, но я тоже хочу XLS?

<?php
include 'model.php';
$rs=new database();
if(isset($_POST["Import"])){

echo $filename=$_FILES["file"]["tmp_name"];

if($_FILES["file"]["size"] > 0)
{

$file = fopen($filename, "r");
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE)
{

$res=$rs->insert($emapData[0],$emapData[1],$emapData[2],$emapData[3],$emapData[4],$emapData[5]);
$result=mysql_fetch_array($res);
if(! $result )
{
echo "<script type=\"text/javascript\">
alert(\"Invalid File:Please Upload CSV File.\");
window.location = \"result.php?msg=valid\"</script>";
}
}
fclose($file);
echo "<script type=\"text/javascript\">
alert(\"CSV File has been successfully Imported.\");
window.location = \"result.php?msg=valid\"</script>";
mysql_close($conn);
}
}
?>

Этот код загружает только CSV-файл, но я хочу загрузить XLS с этим кодом. если возможно, я хочу загрузить все форматы Excel. и остальная часть кода работает нормально, а также я не хочу менять метод.

-2

Решение

Скачать PHPExcel
https://github.com/PHPOffice/PHPExcel

и создать эту функцию

function getDataFromExcel($filename)
{
$excel      = PHPExcel_IOFactory::load($filename);

$sheet      = $excel->getSheet(0);
$highestRow = $sheet->getHighestRow();
$sheetData  = $sheet->toArray(null, true, true, true);

return $sheetData;

}

Он вернет данные в массив

если вы хотите узнать тип файла, используйте этот метод

function getFileType($key)
{
//Define type
$type = 'unknow';
if(isset($_FILES[$key])) {
$file     = $_FILES[$key];
$fileType = $file['type'];
if (strrpos($fileType, 'csv')) {
$type = 'csv';
} else if (($fileType == 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') || ($fileType == 'application/vnd.ms-excel')) {
$type = 'excel';
}
}
return $type;
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector