>  기사  >  백엔드 개발  >  tp3.2의 데이터베이스에 여러 Excel 파일을 업로드하는 예

tp3.2의 데이터베이스에 여러 Excel 파일을 업로드하는 예

WBOY
WBOY원래의
2016-08-08 09:25:141156검색

템플릿 페이지/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>

클릭 점프 컨트롤로 이동하여 사용된 PHPexcel 파일을 TinkPHP/vendor/Excel/에 넣습니다(Excel 폴더는 수동으로 생성해야 함)

공개 함수 uploads(){
$upload = new ThinkUpload();// 업로드 클래스 인스턴스화
$upload->maxSize = 3145728;// 첨부 파일 업로드 크기 설정
$upload->exts = array('jpg', 'gif', 'png', 'jpeg','xls');//첨부파일 업로드 유형 설정
//파일 업로드
$ info = $upload->upload();
if(!$info){//업로드 오류 메시지
$this->error($upload->getError());
} else{// 업로드 성공
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; //읽을 exls 경로 지정
//$type = 'Excel2007'; /Excel5(2003 이하) 또는 Excel2007을 구문 분석하도록 Excel 유형 설정
//echo $xlsPath;
$type = 'Excel5';
$xlsReader = $PHPReader->createReader($ type) ;
$xlsReader->setReadDataOnly(true);
$xlsReader->setLoadSheetsOnly(true);
$Sheets = $xlsReader->load($xlsPath);
/ /시작 reading a
$Sheet = $Sheets->getSheet(0)->toArray(); //첫 번째 워크시트를 읽습니다(숫자는 0부터 시작합니다). 0,1,2,3....
//2차원 배열을 가져옵니다. 각각의 작은 배열은 이 행의 각 열의 데이터를 포함하는 Excel 테이블 내용의 행입니다
// echo '< ;pre>';
//print_r($Sheet);
foreach($Sheet as $k=>$v){
$model = M('student');/ / 성공 업로드 파일 정보
$data['name']=$v[0];
$result=$model->add($data);
if($result){
$this->success("저장 성공",U('Index/excellist'));
}else{
$this->error("저장 성공");
}
}
}
}
}

위 내용은 관련 내용을 포함하여 여러 개의 엑셀 파일을 업로드하고 tp3.2에서 데이터베이스로 가져오는 예제를 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.