PHPExcel - excel 읽기
주요 기능은 업로드된 excel 파일을 읽고 데이터베이스에 삽입하거나 업데이트하는 것입니다.
iconv("gbk","utf8",$_FILES["file"]["tmp_name"]),mysql_query("SET NAMES'utf8"), 인코딩 변환은 중국어가 데이터베이스에 잘못된 코드를 표시하는 것을 방지합니다.
다음은 주요 소스 코드입니다.
1 header("Content-type:text/html;charset=utf-8");
2 require_once('PHPExcel/Classes/PHPExcel.php');
3 require_once('PHPExcel/Classes/PHPExcel/IOFactory.php');
4
5 iconv("gbk","utf8",$_FILES["file"]["tmp_name"]);//
6
7 $fileType=PHPExcel_IOFactory::identify($_FILES["file"]["tmp_name"]);//
8 $objReader=PHPExcel_IOFactory::createReader($fileType);//
9 $objPHPExcel=$objReader->load($_FILES['file']['tmp_name']);//
10
11 $currentSheet = $objPHPExcel->getSheet(0); //
12 $allRow = $currentSheet->getHighestRow(); //
13 $letters_arr = array(1=>'A',2=>'B',3=>'C',4=>'D',5=>'E',6=>'F',7=>'G',8=>'H',9=>'I',10=>'J',11=>'K',12=>'L',13=>'M', 14=>'N',15=>'O',16=>'P',17=>'Q',18=>'R',19=>'S',20=>'T',21=>'U',22=>'V',23=>'W',24=>'X',25=>'Y',26=>'Z');
14
15
16 $con=mysql_connect('localhost','root','root')
17 or die(' !<br />'.mysql_error());
18
19 $db=mysql_select_db('db_product',$con);
20 mysql_query("SET NAMES 'utf8'");
21 for($currentRow = 3;$currentRow<=$allRow;$currentRow++){
22 $rowValues='';
23 $id=(string)($currentSheet->getCell('C'.$currentRow)->getValue());
24
25 $select_id=mysql_query("SELECT * FROM t_shop WHERE productNum='$id'");
26 $result=mysql_fetch_array($select_id);
27
28
29 if(!$result){//
30 foreach ($letters_arr as $key => $value) {
31 $xh=$currentSheet->getCell($value.$currentRow)->getValue();
32 if($key>14)break;
33 $rowValues=$rowValues.($key>1?',':'').'\''.$xh.'\'';
34
35
36 }
37
38 $sql="INSERT INTO t_shop (shopName,brand,productNum,spec,barCode,category,productName,orderNumber,deliveryNumber,returnNumber,returnBackNumber,salesPrice,costPrice,profit) VALUES (".$rowValues.")";
39 mysql_query($sql);
40 }
41 else{
42
43 $reValues=re_row($result,$letters_arr,$currentSheet,$currentRow);
44 $sql="UPDATE t_shop SET shopName='$reValues[0]',brand='$reValues[1]',spec='$reValues[2]',barCode='$reValues[3]',category='$reValues[4]',productName='$reValues[5]',orderNumber=$reValues[6],deliveryNumber=$reValues[7],returnNumber=$reValues[8],returnBackNumber=$reValues[9],salesPrice=$reValues[10],costPrice=$reValues[11],profit=$reValues[12] WHERE productNum='$id'";
45 mysql_query($sql);
46 echo mysql_error().$id.'###';
47 print_r($reValues);
48 echo '<br />';
49 }
50
51
52
53 }
54
55 mysql_close($con);
56
57 function re_row($s,$a,$obj,$currentRow){
58 $b=$d='';
59 foreach ($a as $key => $value) {
60 $xh=$obj->getCell($value.$currentRow)->getValue();
61 if($key>14)break;
62 $d[]=$xh;
63
64
65 }
66
67 foreach ($d as $key => $value) {
68 if($key!=2 && $key<7){
69 $b[]= (string)$value;
70 }
71 elseif($key>6){
72 $b[]=$s[$key]+$value;
73 }
74
75
76 }
77 return $b;
78 }
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.