|
|
|
ไฟล์ Excel ไม่ อ่าน เมื่ออัพโหลดไฟล์ลงไปแล้ว พอมีวิธีไหมครับ มี code ตัวอย่างให้ดู |
|
|
|
|
|
|
|
คือ มันอัพโหลด ขึ้นไปแล้ว แต่มันไม่ยอม อ่านข้อมูลในไฟล์ เพื่อไปเก็บในใน database อะครับขอแนวทางและวิธีการหน่อยครับ
Code (PHP)
<?php
set_time_limit(0);
// Edit upload location here
$destination_path = getcwd().DIRECTORY_SEPARATOR."MyXls/";
$result = 0;
$f = $_FILES['myfile']['name'];
$target_path = $destination_path . basename( $_FILES['myfile']['name']);
if(@move_uploaded_file($_FILES['myfile']['tmp_name'], $target_path)) {
$strPath = realpath(basename(getenv($_SERVER["SCRIPT_NAME"]))); // C:/AppServ/www/myphp
$OpenFile = "MyXls/'$f'";
//*** Create Exce.Application ***//
$xlApp = new COM("Excel.Application", NULL, CP_UTF8) or Die ("Did not instantiate Excel");
$xlBook = $xlApp->Workbooks->Open($destination_path."/".$target_path);
//$xlBook = $xlApp->Workbooks->Open(realpath($OpenFile));
$xlSheet1 = $xlBook->Worksheets(1);
$count = $xlSheet1->UsedRange->Rows->Count();
include "conex.php";
$PlanDate = $xlSheet1->Cells->Item(1,1);
$lp = strlen($PlanDate);
$planD = substr($PlanDate, 62, $lp);
$newplanD = ereg_replace('[[:space:]]+', ' ', trim($planD));
for($i=5;$i<=150;$i++){
if(trim($xlSheet1->Cells->Item($i,2)) != "")
{
$weight = number_format( $xlSheet1->Cells->Item($i,13) , 2 );
$strSQL = "";
$strSQL .= "INSERT INTO plantable ";
$strSQL .= "(NO,PRD,SO,CusName,ProName,Weight,ShipDate,OrderNum,ShipNum,CarReg,PlanDate,M) ";
$strSQL .= "VALUES ";
$strSQL .= "('".$xlSheet1->Cells->Item($i,2)."','".$xlSheet1->Cells->Item($i,4)."','".$xlSheet1->Cells->Item($i,5)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,6)."','".$xlSheet1->Cells->Item($i,10)."' ";
$strSQL .= ",'$weight','".$xlSheet1->Cells->Item($i,16)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,17)."','".$xlSheet1->Cells->Item($i,18)."','".$xlSheet1->Cells->Item($i,26)."','$newplanD','".$xlSheet1->Cells->Item($i,12)."') ";
mysql_query($strSQL);
}
}
@mysql_close($objConnect);
//*** Close & Quit ***//
$xlApp->Application->Quit();
$xlApp = null;
$xlBook = null;
$xlSheet1 = null;
$result = 1;
}
?>
<script language="javascript" type="text/javascript">window.top.window.stopUpload(<?php echo $result; ?>);</script>
Tag : PHP, Excel (Excel.Application)
|
|
|
|
|
|
Date :
2015-05-21 13:24:31 |
By :
dekcomwat |
View :
719 |
Reply :
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่มีใครตอบเบย
|
|
|
|
|
Date :
2015-05-21 15:09:48 |
By :
dekcomwat |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มั่นใจไหมว่า ฟิลด์ต่างๆ NO,PRD,SO,CusName,ProName,Weight,ShipDate,OrderNum,ShipNum,CarReg,PlanDate,M
ทั้งในฐานข้อมูลกับในไฟล์ Excel มันตรงกันไหม?? หรือลอง ไล่เครื่องหมาย . , () ต่างๆ ตั้งแต่บรรทัดที่ 32 ครับ
ถ้าไม่ได้มันน่าจะมี Error อะไรออกมาบ้าง
|
|
|
|
|
Date :
2015-05-21 16:51:37 |
By :
ขี้เกียจ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผม เอาแต่ ตัวที่ ใช้ ลงdatabase ครับ ไม่ได้เอาลงทั้งหมด
แต่ถ้าระบุ ชื่อ ของไฟล์ลงไปแบบนี้เลยอะได้ครับ ตาม code ที่พอ ให้มันหาชื่อไฟล์ มันไม่หาผมก็ไม่รู้ว่าเป็นเพราะอะไร
Code (PHP)
<?php
set_time_limit(0);
//*** Get Document Path ***//
$strPath = realpath(basename(getenv($_SERVER["SCRIPT_NAME"]))); // C:/AppServ/www/myphp
$OpenFile = "MyXls/18-05-2015.xlsx";
//*** Create Exce.Application ***//
$xlApp = new COM("Excel.Application", NULL, CP_UTF8) or Die ("Did not instantiate Excel");
$xlBook = $xlApp->Workbooks->Open($strPath."/".$OpenFile);
//$xlBook = $xlApp->Workbooks->Open(realpath($OpenFile));
$xlSheet1 = $xlBook->Worksheets(1);
$count = $xlSheet1->UsedRange->Rows->Count();
//*** Insert to MySQL Database ***//
include "conex.php";
$PlanDate = $xlSheet1->Cells->Item(1,1);
$lp = strlen($PlanDate);
$planD = substr($PlanDate, 62, $lp);
$newplanD = ereg_replace('[[:space:]]+', ' ', trim($planD));
for($i=5;$i<=150;$i++){
if(trim($xlSheet1->Cells->Item($i,2)) != "")
{
$weight = number_format( $xlSheet1->Cells->Item($i,13) , 2 );
$strSQL = "";
$strSQL .= "INSERT INTO plantable ";
$strSQL .= "(NO,PRD,SO,CusName,ProName,Weight,ShipDate,OrderNum,ShipNum,CarReg,PlanDate,M) ";
$strSQL .= "VALUES ";
$strSQL .= "('".$xlSheet1->Cells->Item($i,2)."','".$xlSheet1->Cells->Item($i,4)."','".$xlSheet1->Cells->Item($i,5)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,6)."','".$xlSheet1->Cells->Item($i,10)."' ";
$strSQL .= ",'$weight','".$xlSheet1->Cells->Item($i,16)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,17)."','".$xlSheet1->Cells->Item($i,18)."','".$xlSheet1->Cells->Item($i,26)."','$newplanD','".$xlSheet1->Cells->Item($i,12)."') ";
mysql_query($strSQL);
}
}
//*** Close MySQL ***//
@mysql_close($objConnect);
//*** Close & Quit ***//
$xlApp->Application->Quit();
$xlApp = null;
$xlBook = null;
$xlSheet1 = null;
?>
|
|
|
|
|
Date :
2015-05-21 17:07:00 |
By :
dekcomwat |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|