Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für das Hochladen mehrerer Excel-Dateien in die Datenbank in tp3.2

Beispiel für das Hochladen mehrerer Excel-Dateien in die Datenbank in tp3.2

WBOY
WBOYOriginal
2016-08-08 09:25:141177Durchsuche

Vorlagenseite/index.html

<span style="color:#000000;"><meta charset=&#39;utf-8&#39;></meta>
<form action="{:U(&#39;Index/uploads&#39;)}" method="post" enctype="multipart/form-data">
上传<select onchange=&#39;aa()&#39; id=&#39;sel&#39;><?php for($i=1;$i<=10 ;$i++ ){?>
<option value=<?php echo $i;?>><?php echo $i;?></option><?php }?></select>个<p>
<div id="div" class="">
<input type="file" name="file"><p>   
</div><input type="submit" value="提交" /> 
</form>
<script type="text/javascript">

	function aa(){
		var sel=document.getElementById('sel').value;
		var str='';
		for (var i=0;i<=sel-1 ;i++ )
		{
			str+=&#39;<input type="file" name="file&#39;+i+&#39;"><p>';
		}
		document.getElementById('div').innerHTML=str;
		}
</script></span>

Klicken Sie hier springen Gehen Sie zur Steuerung und legen Sie die verwendete PHPexcel-Datei in TinkPHP/vendor/Excel/ ab (der Excel-Ordner muss manuell erstellt werden)

public function uploads(){
$upload = new ThinkUpload();// Instanziieren Sie die Upload-Klasse
$upload->maxSize = 3145728;// Legen Sie die Upload-Größe des Anhangs fest
$upload->exts = array('jpg', 'gif', 'png', 'jpeg','xls');//Anhang-Upload-Typ festlegen
//Datei hochladen
$ info = $upload->upload();
if(!$info){//Fehlermeldung hochladen
$this->error($upload->getError());
} else{// Hochladen erfolgreich
foreach($info as $file){
$files='./Public/'.$file['savepath'].$file['savename']; Vendor("Excel.PHPExcel");
vendor("Excel.PHPExcel.PHPExcel_IOFactory");
$PHPExcel = new PHPExcel();
//var_dump($PHPExcel);
$ PHPReader = new PHPExcel_IOFactory();
//var_dump($PHPReader);die;
$xlsPath =$files; //Geben Sie den zu lesenden Exls-Pfad an
//$type = 'Excel2007'; /Legen Sie den Excel-Typ fest, um Excel5 (2003 oder niedriger) oder Excel2007 zu analysieren
//echo $xlsPath;
$type = 'Excel5';
$xlsReader = $PHPReader->createReader($ type) ;
$xlsReader->setReadDataOnly(true);
$xlsReader->setLoadSheetsOnly(true);
$Sheets = $xlsReader->load($xlsPath);
/ /Start reading a
$Sheet = $Sheets->getSheet(0)->toArray(); //Das erste Arbeitsblatt lesen (beachten Sie, dass die Zahl bei 0 beginnt) Sie können dies tun, wenn Sie mehrere A-Schleifen von lesen 0,1,2,3....
//Erhalten Sie ein zweidimensionales Array. Jedes kleine Array ist eine Zeile des Excel-Tabelleninhalts, die die Daten jeder Spalte dieser Zeile enthält.
// echo '< ;pre>';
//print_r($Sheet);
foreach($Sheet as $k=>$v){
$model = M('student');/ / Erfolgreich hochgeladene Dateiinformationen
$data['name']=$v[0];
$result=$model->add($data);
if($result){
$this->success("Erfolgreiche Speicherung",U('Index/excellist'));
}else{
$this->error("Erfolgreiche Speicherung");
}
}
}
}
}

Das Obige stellt das Beispiel des Hochladens mehrerer Excel-Dateien und des Imports in die Datenbank in tp3.2 vor, einschließlich der relevanten Inhalte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn