หลังจากที่เคยได้สอนแสดงข้อมูลและแบ่งหน้าข้อมูลจากฐานข้อมูล MySQLในตาราง (Table) มาแล้ว คราวนี้จะสอนท่านดึงข้อมูลมาแสดงใน Select(List/Menu) หรือ combo box บ้างครับ ส่วนมากแล้วข้อมูลที่ถูกนำมาแสดงใน Select(List/Menu) มีลักษณะเป็นตัวเลือกที่กำหนดไว้ให้แล้ว ซึ่งจะบังคับไม่ให้เราระบุข้อมูลที่นอกเหนือจากนี้ และข้อมูลที่ผมจะนำมาแสดงใน Select(List/Menu) ที่ผมสอนคือ หมวดสินค้า ครับ ซึ่งเราจะเห็นภาพวิธีการใช้งานได้ชัดเจนยิ่งขึ้นในบทความหน้าครับ ในเรื่องของการเพิ่มข้อมูลสินค้า โดยเราจะนำ Select(List/Menu) แสดงหมวดหมู่สินค้า นี้ไปใช้ครับ
+++ สร้างการเชื่อมต่อกับฐานข้อมูลก่อนครับ ทำตามในบทความนี้เลย --> สร้างการเชื่อมต่อฐานข้อมูล MySQL ด้วยDreamweaver
จากนั้นให้ สร้าง Recordset เพื่อร้องขอข้อมูลในเทเบิลหมวดหมู่สินค้า (tb_category) ก่อนครับ ดังรูป
1 คลิกที่แท็บ BINDINGS
2 เลือกตัวเลือกแรก คือ Recordset (Query)
+++ เมื่อหน้าต่าง Recordset แสดงขึ้นมาดังรูป1 ตั้งชื่อให้กับ recordset ของเรา ผมตั้งชื่อว่า showcate เพราะต้องการข้อมูลจากเทเบิลหมวดสินค้าครับ
2 เลือกคำสั่งการเชื่อมต่อกับฐานข้อมูล ศึกษาข้อมูลได้จากที่นี่ --> สร้างการเชื่อมต่อฐานข้อมูล MySQL ด้วยDreamweaver
3 เลือกเทเบิล ซึ่งผมเลือก tb_category ซึ่งเป็นเทเบิลที่ใช้เก็บข้อมูลของหมวดสินค้าครับ
4 เลือกฟิลด์ทั้งหมด (ในที่นี้มีเพียง 2 ฟิลด์เท่านั้นคือ cg_idและcg_name)
5 เรียงข้อมูลจากฟิลด์ชื่อ cg_name โดยเรียกตามตัวอักษรน้อยไปหามาก Ascending
+++ ในแท็บ BINDINGS จะมีข้อมูล Recordset มาแสดงดังรูปข้างล่าง
+++ จากนั้นให้สร้างไฟล์ขึ้นมา 1 ไฟล์ ตั้งชื่อว่า listmenu.php ให้ทำตามรูปข้างล่างเลยครับ
+++ และให้ทำตามขั้นตอนด้านล่างนี้เลยครับ
1 คลิกที่ Select(List/Menu)
2 ตั้งชื่อให้ Select(List/Menu) ของคุณซะ
3 คลิกที่ Dynamic
4 คลิกที่ Label แรก แล้วพิมพ์ "–เลือกหมวด-" ส่วนค่าใน Value ให้ปล่อยว่างไว้
5 เลือก Recordset ของเราครับ ซึ่งผมเลือก showcate ที่ได้สร้างไปเมื่อกี้ครับ
6 เลือกข้อมูลไปแสดงใน Select(List/Menu) ซึ่งจะมีอยู่ 2 ส่วน คือ Values และ Labels
7 คลิก OK
+++ ไปที่ไฟล์ listmenu.php คลิกที่ Code แล้วเพิ่มคำสั่ง mysql_query(‘SET NAMES UTF8’) เพื่อรองรับการแสดงผลภาษาไทย ในบรรทัดต่อจากคำสั่ง mysql_select_db ดังรูป
+++ จากนั้นให้RUNไฟล์ โดยกดที่ปุ่ม F12 แล้วจะได้ผลลัพธุ์ดังรูป
ขอบคุณครับมาแบ่งปันความรู้อีกแล้วววววว
ตอบลบอยากให้สอนแบบว่าเลือกตามหมวดแล้วก็แสดงสินค้าตามหมวดหมู่ครับ:)
@deksp จะเก็บเอาไว้พิจารณาครับ :) แต่ผมว่า มันทำไม่ยากเลยนะครับ
ลบแค่แสดงหมวดสินค้าก่อน เมื่อเราเลือกหมวดสินค้าใดๆ ก็ให้ส่ง id ของหมวดสินค้านั้นเป็นเงื่อนไขไปคิวรี่ข้อมูลจากในเทเบิลสินค้ามาแสดงครับ โดยใช้คำสั่ง sql เช่น SELECT * FROM products WHERE id_หมวดสินค้า=idหมวดสินค้าที่เลือก
ขอถามหน่อยนะครับ ..คือว่า ผม ทำตาราง "สินค้า" แยก กับ "หมวดหมู่"
ตอบลบเวลา Add รายการสินค้า ผมจะให้เก็บ ID ของหมวดหมู่ แล้วทีนี้ ผมหน้า Show รายการสินค้า ผม recordset ทั้ง product และ category แต่ที่ผมยัง งง อยู่ก็คือ จะผูก 2 ตารางนี้ยังไง? คือ หมวดหมู่สินค้ามันแสดงเป็น ID ของ ตัวหมวดหมู่ แต่ผมอยากให้มันแสดงเป้นชื่อหมวดหมู่ อ่ะครับ...
@bggaro
ตอบลบJoin Table ไม่ยากครับ แต่จะต้องเขียนคำสั่ง sql เพิ่มเองนิดหน่อยครับ โดยไปที่ Advanced.. ของหน้าต่าง recordset
ลองศึกษาจากเว็บนี้ดูนะครับ Creating Recordsets with Joins
เดี๋ยวถ้าว่างๆผมจะเขียนบทความ เรื่องการผูกเทเบิลในโปรแกรมดรีม ให้อ่านกันนะครับ
ขอบคุณครับ ^^
ตอบลบ@thebggaro
ตอบลบตอนนี้ทำบทความให้อ่านแล้วนะครับ ตามนี้เลยครับ
แสดงข้อมูลจากฐานข้อมูลโดยการ Join Table โดยใช้ Recordset ของโปรแกรม Dreamweaver
ขอบคุณมากครับ
ตอบลบใส่ mysql_query(‘SET NAMES UTF8’) แล้ว Error คับ
ตอบลบไม่น่าErrorนะครับ พิมพ์ mysql_query('SET NAMES UTF8'); นะครับ
ลบลอง mysql_query('SET NAMES UTF8') or die(mysql_error()); เพื่อดูปัญหาครับ
ขอบคุณมากคร้า เป็นประโยชน์มากค๊
ตอบลบด้วยความยินดีค๊บ ^__^
ลบถ้าเราเลือกคำว่าตุ๊กตากบ คือจะให้มันแสดงออกมา ในรายการที่เราคลิก เขียนอย่างไรคะ
ตอบลบสร้าง list menu แต่มองไม่เห็น recdcordset ที่สร้างไว้ครับ
ตอบลบเมื่อเราเลือกข้อมูลใน list แล้ว อยากให้ลิงค์ไปหน้าใหม่ค่ะ เช่น ถ้าเลือกตุ๊กตากบ แล้วให้ลิงค์ไปเพจใหม่ ต้องเขียนยังไงต่อคะ
ตอบลบอยากให้สอนแบบว่าเลือกตามหมวดแล้ว ก็กดแสดงสินค้าตามหมวดหมู่ครับ:)
ตอบลบ