สำหรับการทำงานของโค้ดในตัวอย่างนี้ จะสามารถนำไปใช้ได้กับการเปลี่ยนแปลงรายการตัวเลือกใน Drop-down List ทุกตัวที่ต้องการให้มีผลกับ Drop-down List ตัวอื่นๆ เช่น 1. ในตัวอย่างนี้ เมื่อเลือกภาค ก็จะแสดงรายชื่อจังหวัด หรือ 2. นำไปดัดแปลงเป็น เมื่อเลือกจังหวัด ก็แสดงรายชื่อ อำเภอ หรือ 3. เมื่อเลือกอำเภอ ก็จะแสดงรายชื่อตำบล หรือการเลือกตัวเลือกของข้อมูลต่างๆที่มีลำดับชั้น เช่น แผนก ฝ่าย เป็นต้น ลำดับขั้นตอนการแก้ไขโค้ดหลังจากที่เราใช้ PHP CI MANIA ทำการ Generate ไฟล์หน้าเว็บออกมาเรียบร้อยแล้ว ให้แก้ส่วนต่างๆดังนี้ 1. เพิ่ม action ใน javascript เพื่อส่ง AJAX ไปดึงข้อมูลจาก... 2. Controller เขียนฟังก์ชั่นเรียกข้อมูลจากตารางที่ต้องการ เช่น ส่งไอดีภาค เข้ามาก็ไปดึง ข้อมูลจังหวัดที่ตรงกับไอดีภาคนั้นๆ โดยเรียกจาก... 3. Model ซึ่งจะกำดึงข้อมูลตามเงื่อนไขโดยอ้างอิงฟังก์ชั่นใน MY_Model ก็จะไม่ได้เขียนอะไรมากเท่าไหร่ แค่ระบุชื่อตารางให้ตรงก็พอ 1. สร้าง Action ให้ทำงานเมื่อ <select> ของภาคเปลี่ยนแปลง ก่อนอื่นให้ตรวจสอบ id ที่ต้องการ 2. เมื่อได้ id ของ <select>
สำหรับตัวอย่างนี้จะเป็นการ JOIN ตาราง 2 ตาราง 1. tb_reject_hd 2. tb_reject_desc ซึ่งจะเชื่อมกันด้วยฟิลด์ docno จะเห็นว่าเราสามารถคิวรี่เรียกข้อมูลออกมาได้ตอนที่ยังไม่ใส่ ORDER BY แต่เมื่อใส่ ORDER BY เข้าไป จะหมุนค้างจนหน้าเว็บหยุดทำงาน จากนั้นก็ลองเพิ่ม INDEX ให้กับฟิลด์ docno ในตาราง tb_reject_desc ซึ่งในตัวอย่างนี้จะสร้างตารางใหม่ขึ้นมาจากตารางเดิม เปลี่ยนชื่อเป็น tb_reject_desc_with_index และทำการเพิ่ม INDEX KEY เข้าไป เมื่อทดสอบคิวรี่แบบมี ORDER BY จะเห็นว่าสามารถแสดงผลได้ทันที จากการสังเกตตัวเลขเวลาในการประมวลผล จะเห็นได้ว่าแบบไม่ใช้ ORDER BY จะทำงานเร็วกว่า แต่ในการทำงานส่วนใหญ่ก็มักจะต้องใช้ ORDER BY อย่างหลีกเลี่ยงไม่ได้ เช่นกรณีค้นหา แบบเรียงลำดับ ตัวอย่างโค้ดคิวรี่ข้อมูลจากตารางที่ Add Index Key แล้ว <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Add Index Key</title> </head> <body> <h2>ORDER BY with INDE