|
|
|
รบกวนสอบถามเรื่อง upload excel file ลง database แบบไม่กำหนดจำนวนการวนรอบค่ะ |
|
|
|
|
|
|
|
ใช้ code ตามด้านล่าง ตรง "for($i=2;$i<=5;$i++)" กำหนดจำนวนรอบของการวน loop ไม่อยากให้กำหนดน่ะค่ะ อยากได้แบบว่าให้นับตามจำนวน record ของ excel file ที่เรา import น่ะค่ะ (พอดีเอาไปดัดแปลงแบบ browse excel file เอง) รบกวนกูรูช่วยด้วยนะคะ ว่าจะแก้ยังไงให้รับตามจำนวน record ของ excel ค่ะ
ขอบคุณมากนะคะ
Code (PHP)
<head>
<title>ThaiCreate.Com PHP(COM) Excel.Application Tutorial</title>
</head>
<body>
<?
//*** Get Document Path ***//
$strPath = realpath(basename(getenv($_SERVER["SCRIPT_NAME"]))); // C:/AppServ/www/myphp
$OpenFile = "MyXls/MyCustomer.xls";
//*** Create Exce.Application ***//
$xlApp = new COM("Excel.Application");
$xlBook = $xlApp->Workbooks->Open($strPath."/".$OpenFile);
$xlSheet1 = $xlBook->Worksheets(1);
//*** Insert to MySQL Database ***//
$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
$objDB = mysql_select_db("mydatabase");
for($i=2;$i<=5;$i++){
If(trim($xlSheet1->Cells->Item($i,1)) != "")
{
$strSQL = "";
$strSQL .= "INSERT INTO customer2 ";
$strSQL .= "(CustomerID,Name,Email,CountryCode,Budget,Used) ";
$strSQL .= "VALUES ";
$strSQL .= "('".$xlSheet1->Cells->Item($i,1)."','".$xlSheet1->Cells->Item($i,2)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,3)."','".$xlSheet1->Cells->Item($i,4)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,5)."','".$xlSheet1->Cells->Item($i,6)."') ";
mysql_query($strSQL);
}
}
//*** Close MySQL ***//
@mysql_close($objConnect);
//*** Close & Quit ***//
$xlApp->Application->Quit();
$xlApp = null;
$xlBook = null;
$xlSheet1 = null;
?>
Data Import/Inserted.
</body>
</html>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2011-05-30 08:51:50 |
By :
yuri_arkin |
View :
1210 |
Reply :
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แก้ตรงนี้ครับ
while($xlSheet1->Cells->Item($i,1) != "")
{
Code เต็ม ๆ
<html>
<head>
<title>ThaiCreate.Com Tutorial</title>
</head>
<body>
<?
//*** Get Document Path ***//
$strPath = realpath(basename(getenv($_SERVER["SCRIPT_NAME"]))); // C:/AppServ/www/myphp
$OpenFile = "MyXls/MyExcelDB.xls";
//*** Create Exce.Application ***//
$xlApp = new COM("Excel.Application");
$xlBook = $xlApp->Workbooks->Open($strPath."/".$OpenFile);
//$xlBook = $xlApp->Workbooks->Open(realpath($OpenFile));
$xlSheet1 = $xlBook->Worksheets(1);
//*** Insert to MySQL Database ***//
$objConnect = mysql_connect("localhost","root","root") or die(mysql_error());
$objDB = mysql_select_db("mydatabase");
$i=2;
while($xlSheet1->Cells->Item($i,1) != "")
{
$strSQL = "";
$strSQL .= "INSERT INTO customer ";
$strSQL .= "(CustomerID,Name,Email,CountryCode,Budget,Used) ";
$strSQL .= "VALUES ";
$strSQL .= "('".$xlSheet1->Cells->Item($i,1)."','".$xlSheet1->Cells->Item($i,2)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,3)."','".$xlSheet1->Cells->Item($i,4)."' ";
$strSQL .= ",'".$xlSheet1->Cells->Item($i,5)."','".$xlSheet1->Cells->Item($i,6)."') ";
mysql_query($strSQL);
$i++;
}
//*** Close MySQL ***//
@mysql_close($objConnect);
//*** Close & Quit ***//
$xlApp->Application->Quit();
$xlApp = null;
$xlBook = null;
$xlSheet1 = null;
?>
Data Import/Inserted.
</body>
</html>
Go to : PHP Import Excel to MySQL Database (Excel.Application)
|
|
|
|
|
Date :
2011-05-30 09:24:00 |
By :
webmaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เย่ ได้แล้ว ขอบคุณมากค่ะ ^ ^
|
|
|
|
|
Date :
2011-05-30 10:52:21 |
By :
yuri_arkin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
จากข้างบน ถ้าจะทำให้ข้อมูลที่เข้ามา id ไม่ซ้ำกับใน database ต้องทำไงค่ะ
|
|
|
|
|
Date :
2011-08-08 11:32:19 |
By :
ayumi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมไม่ตอบตรงนี้อ่ะค่ะ เป็นปัญหาเหมือนกัน
|
|
|
|
|
Date :
2011-10-19 00:52:31 |
By :
mooauan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|