Gewusst wie: Importieren von Großen Excel-Datei in MySql Datenbank Mit PHP
Habe ich zum hochladen der excel-Datei die Daten auf die MySQL-Datenbank mit php. Ich fand den code, aber ich bin nicht in der Lage, um größere Dateien hochzuladen.
Kann jemand bitte sagen Sie mir, wie erhöhe ich die max Datei-Größe für den code erwähnt im folgenden link:
http://www.9code.in/how-to-import-excel-file-to-mysql-database-using-php/
<!DOCTYPE html>
<?php
include 'db.php';
include 'Excel/reader.php';
function uploadFile($fieldName, $fileType, $folderName, $name = "")
{
$flg = 0;
$MaxID = "";
$ext = "";
$uploadfile = "";
if (isset($fieldName) AND $fieldName['name'] != '')
{
$flg = 1;
$allowed_filetypes = $fileType;
//I Need to increase this..... I tried changing values but nothing happened
$max_filesize = 1048576;
$filename = $fieldName['name'];
if ($name == "")
$MaxID = time() . time() . rand(1, 100);
else
$MaxID = $name;
$ext = substr($filename, strpos($filename, '.'), strlen($filename) - 1);
if($ext==".xlsx")
$ext=".xls";
if (!in_array($ext, $allowed_filetypes))
echo "<h1>The file you attempted to upload is not allowed...</h1>";
else if (filesize($fieldName['tmp_name']) > $max_filesize)
echo "<h1>The file you attempted to upload is too large...</h1>";
else
{
$uploadfile = $folderName . "/" . $MaxID . $ext;
if (move_uploaded_file($fieldName['tmp_name'], $uploadfile) == FALSE)
{
echo "<h1>Error in Uploading File...</h1>";
$MaxID = "";
}
else
$MaxID = $MaxID . $ext;
}
}
return $MaxID;
}
if(isset($_POST['submit']))
{
if($_FILES['csvFile']['name']!="")
{
$fileName=uploadFile($_FILES['excelFile'],array(".csv"),"excel_file");
$row=0;
if(($handle = fopen("excel/".$fileName , "r")) !== FALSE)
{
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
{
$num = count($data);
//print_r($data);
$query="INSERT INTO StudentData(FirstName,LastName,MobileNo,City)VALUES('".$data[0]."','".$data[1]."','".$data[2]."','".$data[3]."')";
mysql_query($query);
}
fclose($handle);
}
}
else if($_FILES['excelFile']['name']!="")
{
$fileName=uploadFile($_FILES['excelFile'],array(".xls",".xlsx"),"excel_file");
$data = new Spreadsheet_Excel_Reader();
$data->read('excel_file/'.$fileName);
for($i=1;$i<=$data->sheets[0]['numRows'];$i++)
{
$firstname=$data->sheets[0]['cells'][$i][1];
$lastname=$data->sheets[0]['cells'][$i][2];
$mobile=$data->sheets[0]['cells'][$i][3];
$city=$data->sheets[0]['cells'][$i][4];
$query="INSERT INTO StudentData(FirstName,LastName,MobileNo,City)VALUES('".$firstname."','".$lastname."','".$mobile."','".$city."')";
mysql_query($query);
}
}
}
if(isset($_POST['delete']))
{
mysql_query("DELETE FROM StudentData");
}
?>
- Wie viele, die hier vorgeschlagen wird , ändern Sie die post-Größe und die upload-Größe von php.ini-Datei.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie
LOAD DATA
Befehl in MySQL : Lesen Sie Mehrhaben Sie benutzt, um das laden der Daten in die mysql-Anweisung. Diese können laden Sie Ihre große Datei in der Datenbank.
Blick auf diese Werte in deiner php.ini
upload_max_filesize = 10M
post_max_size = 10M
Müssen Sie den Wert von upload_max_filesize und post_max_size in der php.ini :
Muss ich hinzufügen, dass Sie den server neu starten müssen
Laut ASNAOUI Ayoub ich folgende änderungen vorgenommen:
Aber Noch das Problem war das gleiche dann habe ich versucht zu ändern
Jetzt haben Es perfekt funktioniert.....
Danke an Alle für die Hilfe