ง่ายๆครับ แค่ใส่โค๊ดด้านล่างนี้ใว้บนสุดของไฟล์
1 2 3 |
header("Content-Type: application/vnd.ms-excel"); header('Content-Disposition: attachment; filename="filename.xls"');#กำหนดชื่อไฟล์ echo '<html xmlns:o="urn:schemas-microsoft-com:office:office"xmlns:x="urn:schemas-microsoft-com:office:excel"xmlns="http://www.w3.org/TR/REC-html40">'; |
ถ้าแสดงข้อมูลด้วย table หากต้องการแสดงข้อมูลเป็น string คือหากมีเลข 0 ด้านหน้าตัวเลข ก็ให้แสดงเลข 0 ด้วย ให้ใส่โค๊ดตรง <table> ตามด้านล่างครับ
1 |
<table x:str > |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<?php set_time_limit(0); header('Content-Type: text/html; charset=utf-8'); header("Content-Type: application/vnd.ms-excel"); header('Content-Disposition: attachment; filename="filename.xls"');#กำหนดชื่อไฟล์ echo '<html xmlns:o="urn:schemas-microsoft-com:office:office"xmlns:x="urn:schemas-microsoft-com:office:excel"xmlns="http://www.w3.org/TR/REC-html40">'; //ทำการดึงข้อมูลจาก Database //Connect DB $mysqli = new mysqli('localhost','username','password','db_name'); if ($mysqli->connect_errno) { die( "Failed to connect to MySQL : (" . $mysqli->connect_errno . ") " . $mysqli->connect_error); } $mysqli->set_charset("utf8"); $query = " SELECT * FROM tbl_name "; $res = $mysqli->query($query); echo '<table style="width:100%" x:str>'; echo ' <tr> <td>Field1</td> <td>Field2</td> <td>Field3</td> <td>Field4</td> <td>Field5</td> </tr>'; while($row = $res->fetch_array()){ echo '<tr> <td>'.$row['field1'].'</td> <td>'.$row['field2'].'</td> <td>'.$row['field3'].'</td> <td>'.$row['field4'].'</td> <td>'.$row['field5'].'</td> </tr>'; } echo '</table>'; ?> |
ป้ายกำกับ:excel, export excel, mysql, php