การออกแบบโครงสร้างฐานข้อมูลของแบบสอบถามที่จะกล่าวถึงนี้ สำหรับรูปร่างหน้าตาของแบบสอบถามนั้นจะแตกต่างจากที่พบเจอในงานวิจัย หรือการทำโพลต่างๆ แต่หลักการยังคงเหมือนกัน
บทความนี้ จะเป็นการกล่าวถึงการสร้างแบบฟอร์มสำหรับเก็บข้อมูลความพึงพอใจลูกค้า หรือใช้เก็บข้อมูลบางอย่างที่เราต้องการจากกลุ่มเป้าหมาย เช่น ความพึงพอใจต่อบริการที่ได้รับ การเก็บประวัติความสนใจ หรือความต้องการต่างๆของกลุ่มเป้าหมาย
สำหรับเนื้อหาในบทความนี้มาเริ่มกันที่การออกแบบฐานข้อมูล ซึ่งในมุมมองของผมนั้น ก็คิดว่าไม่ได้มีอะไรมากไปกว่าการเก็บข้อมูลลงฐานข้อมูล MySQL แล้วนำมาแสดงผลให้ผู้เรียกข้อมูลได้ทราบบนหน้าเว็บไซต์
โดยหลักการทั่วไป สิ่งที่จะปรากฏอยู่ในแบบฟอร์มสำหรับเก็บข้อมูลนั้นจะมีคร่าวๆ ดังนี้
1. ชื่อแบบฟอร์ม ข้อมูลส่วนหัวของแบบฟอร์ม
2. รายการคำถาม
ข้อมูลส่วนที่ 1 นั้นจะเป็นส่วนหัว นั่นก็คือข้อมูลหลัก ดังนั้นผมจะนับเป็น
1) ตารางสำหรับเก็บข้อมูลหัวข้อส่วนหัวของแบบสอบถาม
ข้อมูลส่วนที่ 2 นั้น เป็นรายการคำถาม นั่นแสดงว่าต้องมีหลายข้อดังนั้นผมก็จะแยกไปเป็นอีก 1 ตาราง
2) ตารางเก็บรายละเอียดคำถามแต่ละข้อ
สำหรับการตอบคำถามผ่านโปรแกรมนั้น จะแตกต่างจากการตอบบนกระดาษ ที่เก็บผลลัพธ์ไว้บนนั้นเลย ดังนั้นในการเขียนโปรแกรม PHP เราก็จะต้องมีส่วนของการเก็บคำตอบไว้ในฐานข้อมูลด้วย
เพราะแบบฟอร์มที่สร้างขึ้นมานั้น เราจะนำไปใช้กับคนหลายคน ดังนั้นการจะเก็บคำตอบไว้ที่ตารางเดียวกันกับแบบฟอร์มเลยคงจะไม่ดีนัก ดังนั้นก็ต้องสร้างตารางสำหรับเก็บข้อมูลรายละเอียดของผู้ตอบแต่ละคน และคำตอบของแต่ละคำถามของทุกๆคน
เราก็จะต้องสร้างตารางเพิ่มในฐานข้อมูลของเราอีก 1 ตาราง
3) ตารางสำหรับเก็บคำตอบของคำถามแต่ละข้อที่ผู้ใช้เลือกตอบ
ซึ่งสังเกตว่า ตารางใหม่ที่สร้างเข้ามานั้นจะเชื่อมโยงกับตารางเดิม ดังนั้นในตารางใหม่ จะต้องมีฟิลด์ที่ใช้สำหรับอ้างอิง หรือแสดงที่มาว่าเป็นการเก็บข้อมูลจาก ตารางหลักเรคอร์ดไหนด้วย
การออกแบบฐานข้อมูลนั้น ครั้งแรกอาจจะยังไม่สมบูรณ์นัก สำหรับผมแล้วไม่เก่งเรื่องฐานข้อมูลสักเท่าไหร่ดังนั้น ก็จะออกแบบคร่าวๆ พอให้เขียนโค๊ดได้ จากนั้นเมื่อติดปัญหาตรงไหนก็ค่อยปรับแก้อีกที
วิธีนี้ดูเหมือนจะไม่เข้าท่าสักเท่าไหร่ แต่ถ้ามองไปที่ระบบบางทีเราก็ไม่ได้มีข้อมูลครบ (อีกอย่างก็ขี้เกียจหาข้อมูลด้วยแหละ ^^") ดังนั้นถ้าเสียเวลามาคิดออกแบบอย่างเดียว คงจะไม่ได้เริ่มทำสักที
ตอนนี้ก็ประมาณไว้ว่าระบบแบบสอบถามสำหรับรวบรวมข้อมูลด้วย PHP + MySQL นี้น่าจะเสร็จก่อนธันวาคมปีหน้า 555+ ลองคิดดูเอาเองเถอะครับ แต่ละบทความที่อัพเดตห่างกันขนาดไหน คนในสายงานโปรแกรมเมอร์ถ้าไม่ขยันมีหวังได้อดตายเป็นแน่แท้
เจอกันอีกทีปีหน้า ครับผม สวัสดีครับ ^O^
-------------------------------------------------------------------------------------
สำหรับบทความเรื่องแบบสอบถามที่ผมตั้งใจเขียนนั้นยังไปไม่ถึงไหน และมีหลายท่านถามเข้ามาอย่างต่อเนื่อง ผมเลยไปหาเว็บให้โหลดซอร์สโค๊ดที่ท่านอื่นเขาแจกฟรีมาให้ดูเป็นตัวอย่างแทนนะครับ
บทความนี้ จะเป็นการกล่าวถึงการสร้างแบบฟอร์มสำหรับเก็บข้อมูลความพึงพอใจลูกค้า หรือใช้เก็บข้อมูลบางอย่างที่เราต้องการจากกลุ่มเป้าหมาย เช่น ความพึงพอใจต่อบริการที่ได้รับ การเก็บประวัติความสนใจ หรือความต้องการต่างๆของกลุ่มเป้าหมาย
สำหรับเนื้อหาในบทความนี้มาเริ่มกันที่การออกแบบฐานข้อมูล ซึ่งในมุมมองของผมนั้น ก็คิดว่าไม่ได้มีอะไรมากไปกว่าการเก็บข้อมูลลงฐานข้อมูล MySQL แล้วนำมาแสดงผลให้ผู้เรียกข้อมูลได้ทราบบนหน้าเว็บไซต์
โดยหลักการทั่วไป สิ่งที่จะปรากฏอยู่ในแบบฟอร์มสำหรับเก็บข้อมูลนั้นจะมีคร่าวๆ ดังนี้
1. ชื่อแบบฟอร์ม ข้อมูลส่วนหัวของแบบฟอร์ม
2. รายการคำถาม
ข้อมูลส่วนที่ 1 นั้นจะเป็นส่วนหัว นั่นก็คือข้อมูลหลัก ดังนั้นผมจะนับเป็น
1) ตารางสำหรับเก็บข้อมูลหัวข้อส่วนหัวของแบบสอบถาม
ข้อมูลส่วนที่ 2 นั้น เป็นรายการคำถาม นั่นแสดงว่าต้องมีหลายข้อดังนั้นผมก็จะแยกไปเป็นอีก 1 ตาราง
2) ตารางเก็บรายละเอียดคำถามแต่ละข้อ
สำหรับการตอบคำถามผ่านโปรแกรมนั้น จะแตกต่างจากการตอบบนกระดาษ ที่เก็บผลลัพธ์ไว้บนนั้นเลย ดังนั้นในการเขียนโปรแกรม PHP เราก็จะต้องมีส่วนของการเก็บคำตอบไว้ในฐานข้อมูลด้วย
เพราะแบบฟอร์มที่สร้างขึ้นมานั้น เราจะนำไปใช้กับคนหลายคน ดังนั้นการจะเก็บคำตอบไว้ที่ตารางเดียวกันกับแบบฟอร์มเลยคงจะไม่ดีนัก ดังนั้นก็ต้องสร้างตารางสำหรับเก็บข้อมูลรายละเอียดของผู้ตอบแต่ละคน และคำตอบของแต่ละคำถามของทุกๆคน
เราก็จะต้องสร้างตารางเพิ่มในฐานข้อมูลของเราอีก 1 ตาราง
3) ตารางสำหรับเก็บคำตอบของคำถามแต่ละข้อที่ผู้ใช้เลือกตอบ
ซึ่งสังเกตว่า ตารางใหม่ที่สร้างเข้ามานั้นจะเชื่อมโยงกับตารางเดิม ดังนั้นในตารางใหม่ จะต้องมีฟิลด์ที่ใช้สำหรับอ้างอิง หรือแสดงที่มาว่าเป็นการเก็บข้อมูลจาก ตารางหลักเรคอร์ดไหนด้วย
การออกแบบฐานข้อมูลนั้น ครั้งแรกอาจจะยังไม่สมบูรณ์นัก สำหรับผมแล้วไม่เก่งเรื่องฐานข้อมูลสักเท่าไหร่ดังนั้น ก็จะออกแบบคร่าวๆ พอให้เขียนโค๊ดได้ จากนั้นเมื่อติดปัญหาตรงไหนก็ค่อยปรับแก้อีกที
วิธีนี้ดูเหมือนจะไม่เข้าท่าสักเท่าไหร่ แต่ถ้ามองไปที่ระบบบางทีเราก็ไม่ได้มีข้อมูลครบ (อีกอย่างก็ขี้เกียจหาข้อมูลด้วยแหละ ^^") ดังนั้นถ้าเสียเวลามาคิดออกแบบอย่างเดียว คงจะไม่ได้เริ่มทำสักที
ตอนนี้ก็ประมาณไว้ว่าระบบแบบสอบถามสำหรับรวบรวมข้อมูลด้วย PHP + MySQL นี้น่าจะเสร็จก่อนธันวาคมปีหน้า 555+ ลองคิดดูเอาเองเถอะครับ แต่ละบทความที่อัพเดตห่างกันขนาดไหน คนในสายงานโปรแกรมเมอร์ถ้าไม่ขยันมีหวังได้อดตายเป็นแน่แท้
เจอกันอีกทีปีหน้า ครับผม สวัสดีครับ ^O^
-------------------------------------------------------------------------------------
สำหรับบทความเรื่องแบบสอบถามที่ผมตั้งใจเขียนนั้นยังไปไม่ถึงไหน และมีหลายท่านถามเข้ามาอย่างต่อเนื่อง ผมเลยไปหาเว็บให้โหลดซอร์สโค๊ดที่ท่านอื่นเขาแจกฟรีมาให้ดูเป็นตัวอย่างแทนนะครับ
หากนำไปใช้งานจริงก็ลองปรับแต่งเพิ่มเติมตามงานของแต่ละท่านไปนะครับ
ดาวน์โหลดซอร์สโค๊ดได้ที่ http://www.thaicreate.com/php/ forum/099342.html
มีข้อสงสัยสอบถามทางเจ้าของกระทู้ได้โดยตรงเลยครับ
ปล. ส่วนบทความและตัวอย่ างของผมคงจะเป็นซีรีย์ยาวที่ค้ างไว้ก่อน พอจะต้องเขียนยาวๆแล้วใจมันไม่ มีเรี่ยวมีแรงซะงั้นครับ ^^"
ดาวน์โหลดซอร์สโค๊ดได้ที่ http://www.thaicreate.com/php/
มีข้อสงสัยสอบถามทางเจ้าของกระทู้ได้โดยตรงเลยครับ
"PHP ไม่ได้สร้างสุดยอดโปรแกรมแต่ PHP ช่วยให้งานคุณง่ายขึ้นต่างหาก"
PHP CI MANIA - PHP Code Generatorโปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม
สนใจสั่งซื้อเพียง 3,990 บาท
PHP CI MANIA - PHP Code Generator
โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม"
ความคิดเห็น
แสดงความคิดเห็น