Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > สอบถามเรื่อง การ Export to excel ครับ แต่ถ้าจะปรับให้มันรายงานออกเป็น LibreOffice จะได้ไหมครับ



 

สอบถามเรื่อง การ Export to excel ครับ แต่ถ้าจะปรับให้มันรายงานออกเป็น LibreOffice จะได้ไหมครับ

 



Topic : 087668



โพสกระทู้ ( 66 )
บทความ ( 0 )



สถานะออฟไลน์




Code นี้เป็น การ Export to excel ครับ แต่ถ้าจะปรับให้มันรายงานออกเป็น LibreOffice ซึ้งเป็นนามสกุล .ods จะได้ไหมครับ
ผมลองเปลี่ยน $strFileName = "MyXls/MyExcel.xls"; เป็น $strFileName = "MyXls/MyExcel.ods"; แล้วมันไม่ทำงานครับ ช่วยแนะนำหน่อยครับ
อีกนิดครับ ถ้าเราจะให้ Export เฉพาะที่เราค้นหาล่ะครับประมาณว่า ค้านหาแล้วรายงานออกทาง LibreOffice
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP(COM) Excel.Application Tutorial</title>
</head>
<body>
<?
		$objConnect = mysql_connect("localhost","root","root") or die("Error Connect to Database");
		$objDB = mysql_select_db("mydatabase");
		$strSQL = "SELECT * FROM customer";
		$objQuery = mysql_query($strSQL);
		if($objQuery)
		{			
				//*** Get Document Path ***//
				$strPath = realpath(basename(getenv($_SERVER["SCRIPT_NAME"]))); // C:/AppServ/www/myphp

				//*** Excel Document Root ***//
				$strFileName = "MyXls/MyExcel.xls";

				//*** Connect to Excel.Application ***//
				$xlApp = new COM("Excel.Application");
				$xlBook = $xlApp->Workbooks->Add();


				//*** Create Sheet 1 ***//
				$xlBook->Worksheets(1)->Name = "My Customer";							
				$xlBook->Worksheets(1)->Select;

				//*** Header ***//
				$xlApp->ActiveSheet->Cells(1,1)->Value = "CustomerID";
				$xlApp->ActiveSheet->Cells(1,2)->Value = "Name";
				$xlApp->ActiveSheet->Cells(1,3)->Value = "Email";
				$xlApp->ActiveSheet->Cells(1,4)->Value = "CountryCode";
				$xlApp->ActiveSheet->Cells(1,5)->Value = "Budget";
				$xlApp->ActiveSheet->Cells(1,6)->Value = "Used";
				//***********//
			
				$intRows = 2;
				while($objResult = mysql_fetch_array($objQuery))
				{				
					//*** Detail ***//
					$xlApp->ActiveSheet->Cells($intRows,1)->Value = $objResult["CustomerID"];
					$xlApp->ActiveSheet->Cells($intRows,2)->Value = $objResult["Name"];
					$xlApp->ActiveSheet->Cells($intRows,3)->Value = $objResult["Email"];
					$xlApp->ActiveSheet->Cells($intRows,4)->Value = $objResult["CountryCode"];
					$xlApp->ActiveSheet->Cells($intRows,5)->Value = $objResult["Budget"];
					$xlApp->ActiveSheet->Cells($intRows,6)->Value = $objResult["Used"];
					$intRows++;
				}

				@unlink($strFileName); //*** Delete old files ***//	

				$xlBook->SaveAs($strPath."/".$strFileName); //*** Save to Path ***//
				//$xlBook->SaveAs(realpath($strFileName)); //*** Save to Path ***//

				//*** Close & Quit ***//
				$xlApp->Application->Quit();
				$xlApp = null;
				$xlBook = null;
				$xlSheet1 = null;

		}

		mysql_close($objConnect);	
?>
Excel Created <a href="<?=$strFileName?>">Click here</a> to Download.
</body>
</html>




Tag : PHP, MySQL









ประวัติการแก้ไข
2012-12-06 11:14:41
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-12-06 11:12:00 By : joehawe View : 1199 Reply : 3
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ไม่แน่ใจว่าตัวนี้มันจะได้หรือเปล่าครับ หรือไม่ก็ลองดู PHPExcel ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-12-07 13:41:49 By : mr.win
 


 

No. 2



โพสกระทู้ ( 66 )
บทความ ( 0 )



สถานะออฟไลน์


ลองดูครับ


ประวัติการแก้ไข
2012-12-10 09:50:15
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-12-10 09:47:51 By : joehawe
 

 

No. 3



โพสกระทู้ ( 66 )
บทความ ( 0 )



สถานะออฟไลน์


ผมลองดูตาคำแนะนำแล้วนะครับมันออกมาแบบนี้อ่ะครับ mr.win ช่วยแนะนำหน่อยครับ ผมล่ะมึนตึบเลย
02:40:14 Create new PHPExcel object 02:40:14 Set properties 02:40:14 Add some data 02:40:14 Rename sheet 02:40:14 Write to Excel2007 format 02:40:14 Peak memory usage: 2.75 MB 02:40:14 Done writing file.
Code (PHP)
<?php
/**
* PHPExcel
*
* Copyright (C) 2006 - 2011 PHPExcel
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*
* @category PHPExcel
* @package PHPExcel
* @copyright Copyright (c) 2006 - 2011 PHPExcel (http://www.codeplex.com/PHPExcel)
* @license http://www.gnu.org/licenses/old-licenses/lgpl-2.1.txt LGPL
* @version 1.7.6, 2011-02-27
*/

/** Error reporting */
error_reporting(E_ALL);

date_default_timezone_set('Europe/London');

/** PHPExcel */
require_once '../joe/Classes/PHPExcel.php';


// Create new PHPExcel object
echo date('H:i:s') . " Create new PHPExcel object\n";
$objPHPExcel = new PHPExcel();

// Set properties
echo date('H:i:s') . " Set properties\n";
$objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
->setLastModifiedBy("Maarten Balliauw")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
->setKeywords("office 2007 openxml php")
->setCategory("Test result file");


// Add some data
echo date('H:i:s') . " Add some data\n";
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', 'num_id')
->setCellValue('B1', 'saller')
->setCellValue('C1', 'list')
->setCellValue('D1', 'price')
->setCellValue('E1', 'telno')
->setCellValue('F1', 'conei')
->setCellValue('G1', 'by_name')
->setCellValue('H1', 'date');

// Write data from MySQL result
$objConnect = mysql_connect("root","joe","91199") or die("Error Connect to Database");
$objDB = mysql_select_db("joe");
$strSQL = "SELECT * FROM buymaster";
$objQuery = mysql_query($strSQL);
$i = 2;
while($objResult = mysql_fetch_array($objQuery))
{
$objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $objResult["num_id"]);
$objPHPExcel->getActiveSheet()->setCellValue('B' . $i, $objResult["saller"]);
$objPHPExcel->getActiveSheet()->setCellValue('C' . $i, $objResult["list"]);
$objPHPExcel->getActiveSheet()->setCellValue('D' . $i, $objResult["price"]);
$objPHPExcel->getActiveSheet()->setCellValue('E' . $i, $objResult["telno"]);
$objPHPExcel->getActiveSheet()->setCellValue('F' . $i, $objResult["conei"]);
$objPHPExcel->getActiveSheet()->setCellValue('G' . $i, $objResult["by_name"]);
$objPHPExcel->getActiveSheet()->setCellValue('H' . $i, $objResult["date"]);
$i++;
}
mysql_close($objConnect);

// Rename sheet
echo date('H:i:s') . " Rename sheet\n";
$objPHPExcel->getActiveSheet()->setTitle('My Customer');


// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0);


// Save Excel 2007 file
echo date('H:i:s') . " Write to Excel2007 format\n";
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');
$strFileName = "myData.xlsx";
$objWriter->save($strFileName);


// Echo memory peak usage
echo date('H:i:s') . " Peak memory usage: " . (memory_get_peak_usage(true) / 1024 / 1024) . " MB\r\n";

// Echo done
echo date('H:i:s') . " Done writing file.\r\n";
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-12-10 09:49:14 By : joehawe
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง การ Export to excel ครับ แต่ถ้าจะปรับให้มันรายงานออกเป็น LibreOffice จะได้ไหมครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่