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 MySQL data to Excel in PHP ครับ



 

สอบถามการ Export MySQL data to Excel in PHP ครับ

 



Topic : 136442



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



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




จากตัวอย่าง มีข้อมูลแสดงออกมา 3 ใบสั่งซื้อ แต่พอกดปุ่ม Expo Data ไฟล์Excelโหลดออกมาทั้ง 3 ไฟล์ เป็นข้อมูล รหัสการสั่งซื้อ: 40 ทั้งหมดครับ

รบกวนช่วยแนะนำหน่อยครับ

ความต้องการ
1.ถ้าจะให้ มีปุ่ม Expo Data อันเดียวโหลดทั้งหมด
2.หรือ มีหลายๆปุ่ม แต่ให้ข้อมูลแสดงออกมาตรงกับ รหัสการสั่งซื้อ


ส่วนCODE
<?php
session_start();
?>
<?php
require 'head.php';
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>ประวัติการทำรายการ</title>
<style>
@import "global-order.css";

form {
margin: 20px auto;
width: 70%;
border: solid 0px;
font-size: 12px;
color: green;
}
form > * {
font: 14px tahoma;
padding: 3px;
}
input {
width: 200px;
margin: 3px;
background: #ffc;
border: solid 1px gray;
}
h2.warning {
text-align: left !important;
}
span#forget-pswd {
width: 425px;
display: block;
text-align: right;
margin: -5px 0px 10px 0px;
}
span#forget-pswd a {
font-size: 12px;
}
#head {
padding: 5px !important;
}
table {
margin: 20px auto;
border-collapse: collapse;
}
caption {
text-align: left;
padding-bottom: 3px !important;
}
td:nth-child(1) {
width: 250px;
text-align: left !important;
}
td:nth-child(2) {
width: 200px;
text-align: left !important;
}
td:nth-child(3), td:nth-child(4) {
width: 80px;
}
td:nth-child(5), td[colspan]+td {
width: 100px;
}
table th {
background: green;
color: yellow;
padding: 5px;
border-right: solid 1px white;
font-size:12px;
}
tr:nth-of-type(odd) {
background: lavender;
}
tr:nth-of-type(even) {
background: whitesmoke;
}
td {
text-align: center;
vertical-align: top;
padding: 3px 0px 3px 3px;
border-right: solid 1px white;
}
tr:last-child td {
border-top: solid 1px white;
background: powderblue !important;
padding: 5px;
font-weight: bold;
text-align: center !important;
}
caption > div {
float: right;
color: navy;
}
caption img {
height: 16px;
float:none;
vertical-align: bottom;
}
h3 {
text-align: center;
color: navy;
}
div#head > img {
vertical-align: bottom;
margin-right: 5px;
height: 24px;
}
h5 {
text-align: center;
margin: 0px;
}
</style>
<script src="js/jquery-2.1.1.min.js"> </script>

</head>
<body>
<div class="col-xs-10 col-md-10">
<?php
ini_set('display_errors', 1);
error_reporting(~0);
require 'connect.php';
$err = "";
$name = "";
if($_POST['customer_code']) {
$customer_code = $_POST['customer_code'];
$pswd = $_POST['pswd'];
//ตรวจสอบว่าอีเมลและรหัวผ่านที่ใส่เข้ามาถูกต้องหรือไม่
$sql = "SELECT * FROM customers WHERE customer_code = '$customer_code' AND password = '$pswd'";
$r = mysqli_query($objCon, $sql);
if(mysqli_num_rows($r)==0) {
$err = '<h2 class="warning">ท่านใส่รหัสลูกค้าหรือรหัสผ่านไม่ถูกต้อง</h2>';
}
else {
$data = mysqli_fetch_array($r);
$name = $data['firstname'] . " " . $data['lastname'];

$cust_id = $data['customer_code'];
//echo"$cust_id ";
$sql = "SELECT *, DATE_FORMAT(OrderDate, '%d-%m-%Y') AS OrderDate
FROM tr_orders WHERE customer_code = '$cust_id' ORDER BY oid DESC ";
$r = mysqli_query($objCon, $sql);
if(mysqli_num_rows($r) == 0) {
echo "<h3><font color='red'>ไม่พบ</font></h3>";
}
echo "<h5>ประวัติการทำรายการของ:<font color='red'>($cust_id)</font>&nbsp;&nbsp;$name</h5>";
while($data = mysqli_fetch_array($r)) {
$order_id = $data['oid'];
$date = $data['OrderDate'];

//กำหนดสถานะการapprove (ด้วยภาพ Yes&No)
$img_approve = "images/no.png";
if($data['status'] == "y") {
$img_approve = "images/yes.png";
}
$sql = "SELECT order_details.*, qproducts.*
FROM order_details LEFT JOIN qproducts
ON order_details.pro_id = qproducts.id
WHERE order_details.order_id = '$order_id'";
$result = mysqli_query($objCon, $sql);
?><tr>
<td>
</td>
</tr>
<table id='myTable' border='0' style='width:100%'>
<caption>
<b>วันที่: <?php echo $date; ?> &nbsp;&nbsp;
รหัสการสั่งซื้อ: <?php echo $order_id; ?></b>
<div>
<img src="<?php echo $img_approve;?>">การอนุมัติ</div>
</caption>
<center>
<tr><th>รหัสสินค้า</th><th>รหัสสั่งซื้อ</th><th>ชื่อสินค้า</th><th>จำนวน</th><th>ราคา</th><th>รวม</th></tr>
</center>
<?php
$grand_total = 0;
while($order = mysqli_fetch_array($result)) {
$sub_total = $order['quantity'] * $order['product_price'];
?>
<tr>
<td style="width:10%"><?php echo $order['product_code']; ?></td>
<td style="width:10%"><?php echo $order['ref_no']; ?></td>
<td style="width:50%"><?php echo $order['product_name']; ?></td>
<td style="width:10%"><?php echo $order['quantity']; ?></td>
<td style="width:10%"><?php echo $order['product_price']; ?></td>
<td><?php echo number_format($sub_total); ?></td>
</tr>
<?php
$grand_total += $sub_total;
}
?>
<tr><td colspan="5">รวมทั้งหมด</td><td><?php echo number_format($grand_total); ?></td></tr>

</table>
<a href='#' id='download_link' class='btn btn-info btn-sm' onClick='javascript:ExcelReport();'>Export Data</a>

<?php
} //end while
} //end else
}

//ถ้าไม่มีข้อมูลโพสเข้ามา หรือเกิดข้อผิดพลาด ให้แสดงฟอร์มสำหรับใส่อีเมลและรหัสผ่าน
if(!$_POST || $err != "") {
?>
<form method="post"><?php echo $err; ?>
<span>กรุณาใส่รหัสลูกค้าและรหัสผ่านที่ท่านใช้ในการสั่งซื้อสินค้า</span><br>
<input type="customer_code" name="customer_code" placeholder="รหัสลูกค้า *" required>
<input type="password" name="pswd" placeholder="รหัสผ่าน *" maxlength="20" required>
<button type="submit">ตกลง</button>
<span id="forget-pswd"><a href="#">ลืมรหัสผ่าน</a></span>
</form>

<?php
}
?>
</div>

</div>
</div>
</body>
</html>
<?php mysqli_close($objCon); ?>

<!-- เรียกใช้ javascript สำหรับ export ไฟล์ excel -->
<script src="https://unpkg.com/xlsx/dist/xlsx.full.min.js" ></script>
<script src="https://unpkg.com/[email protected]/FileSaver.js" ></script>

<script>
function ExcelReport()//function สำหรับสร้าง ไฟล์ excel จากตาราง
{
var sheet_name="excel_sheet";/* กำหหนดชื่อ sheet ให้กับ excel โดยต้องไม่เกิน 31 ตัวอักษร */
var elt = document.getElementById('myTable');/*กำหนดสร้างไฟล์ excel จาก table element ที่มี id ชื่อว่า myTable*/

/*------สร้างไฟล์ excel------*/
var wb = XLSX.utils.table_to_book(elt, {sheet: sheet_name});
XLSX.writeFile(wb,'report.xlsx');//Download ไฟล์ excel จากตาราง html โดยใช้ชื่อว่า report.xlsx
}
</script>
<style type="text/css">

table {
border-collapse: collapse;
width:100%;
}

table, th, td {
border: 1px solid black;
}

</style>

ส่วนรูป Error
error1

ไฟล์Excel
E2



Tag : PHP, MySQL, HTML, Google Chrome, Mozilla Firefox, Apache







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2021-10-25 08:38:17 By : mrcool_307 View : 996 Reply : 1
 

 
เพิ่ม Sheet

Static
Code (PHP)
$sheet = $this->excel->getActiveSheet(0);
$this->sheet = $sheet;
$sheet->setTitle("Sheet1");
//Statement (Loop->data1)

$this->excel->createSheet();
$sheet = $this->excel->setActiveSheetIndex(1);
$this->sheet = $sheet;
$sheet->setTitle("Sheet2");
//Statement (Loop->data2)

$this->excel->createSheet();
$sheet = $this->excel->setActiveSheetIndex(2);
$this->sheet = $sheet;
$sheet->setTitle("Sheet3");
//Statement (Loop->data3)



Loop
Code (PHP)
$sheet_index = 0;
foreach ():
	if ($sheet_index > 0) {
		$this->excel->createSheet();
		$sheet = $this->excel->setActiveSheetIndex($sheet_index);
	} else {
		$sheet = $this->excel->getActiveSheet(0);
	}
	$this->sheet = $sheet;
	$sheet->setTitle("Title Name");
	++$sheet_index;
endforeach;







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-10-26 10:36:13 By : Guest
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามการ Export MySQL data to Excel in PHP ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 02
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 อัตราราคา คลิกที่นี่