หัวข้อ: PHP การส่งออกเข้า Ms Excel อย่างง่ายๆ เริ่มหัวข้อโดย: 2t ที่ มกราคม 15, 2008, 11:51:56 AM การส่งออกเข้า Ms Excel อย่างง่ายๆ
การส่งออกเข้า Ms Excel จะส่งออกในรูปแบบของไฟล์ .csv และสามารถเปิดด้วย โปรแกรม Microsoft Excel มาดูตัวอย่าง code กันเลย 1.เริ่มแรกให้สร้าง ฐานข้อมูลชื่อ mydatabase รายละเอียดของตาราง // สร้างตาราง ชื่อ testing CREATE TABLE `testing` ( `id` int(3) NOT NULL auto_increment, `question` varchar(100) NOT NULL default '', `c1` varchar(100) NOT NULL default '', `c2` varchar(100) NOT NULL default '', `c3` varchar(100) NOT NULL default '', `c4` varchar(100) NOT NULL default '', `answer` int(1) NOT NULL default '0', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=11 ; # // แทรกข้อมูลลงตาราง testing # dump ตาราง `testing` # INSERT INTO `testing` VALUES (1, 'ข้อที่ 1', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 1); INSERT INTO `testing` VALUES (2, 'ข้อที่ 2', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 2); INSERT INTO `testing` VALUES (3, 'ข้อที่ 3', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 3); INSERT INTO `testing` VALUES (4, 'ข้อที่ 4', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 4); INSERT INTO `testing` VALUES (5, 'ข้อที่ 5', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 4); INSERT INTO `testing` VALUES (6, 'ข้อที่ 6', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 3); INSERT INTO `testing` VALUES (7, 'ข้อที่ 7', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 2); INSERT INTO `testing` VALUES (8, 'ข้อที่ 8', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 1); INSERT INTO `testing` VALUES (9, 'ข้อที่ 9', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 2); INSERT INTO `testing` VALUES (10, 'ข้อที่ 10', 'ตัวเลือกที่ 1', 'ตัวเลือกที่ 2', 'ตัวเลือกที่ 3', 'ตัวเลือกที่ 4', 3); 2.สร้างไฟล์ sample1.php โดยพิมพ์ code ตามด้านล่างนี้ <? header('Content-type: application/csv'); header('Content-Disposition: attachment; filename="testing.csv"'); $host="localhost"; $username=""; $password=""; $db="mydatabase"; $tb="testing"; mysql_connect( $host,$username,$password) or die ("ติดต่อกับฐานข้อมูล Mysql ไม่ได้ "); mysql_select_db($db) or die("เลือกฐานข้อมูลไม่ได้"); echo "ข้อที่,คำถาม,ตัวเลือกที่ 1,ตัวเลือกที่ 2,ตัวเลือกที่ 3,ตัวเลือกที่ 4,ตัวเลือกที่ถูก,\n"; $sql = "select * from $tb"; $dbquery = mysql_query($sql); $num_rows = mysql_num_rows($dbquery); $i=0; while ($i < $num_rows) { $result= mysql_fetch_array($dbquery); echo "$result[id],$result[question],$result[c1],$result[c2],$result[c3],$result[c4],$result[answer],\n"; $i++; } ?> เครดิต เว็บ ไทยดีดี หัวข้อ: Re: PHP การส่งออกเข้า Ms Excel อย่างง่ายๆ เริ่มหัวข้อโดย: apache13 ที่ มกราคม 18, 2008, 10:46:54 AM ขอเสริมเทคนิคอีกนิดแล้วกันนะครับ
ถ้าสมมุติข้อมูลเรามี , อยู่จะทำอย่างไร ..... เช่นเราต้องการให้มันแสดง หนึ่งแสนในช่องนั้นโดยมี , คั่นตำแหน่งด้วย แนะนำให้ใส่ "100,000" ไว้แล้วมันจะตีความว่าไม่ต้องตัด , ในช่องนั้นครับ อ้างอิงจาก http://en.wikipedia.org/wiki/Comma-separated_values |