แบบฟอร์มคอมเพล็กซ์ที่เรียกว่าที่นี่หมายถึงแบบฟอร์มที่มีประเภทอินพุตที่แตกต่างกันมากมายเช่นกล่องรายการแบบเลื่อนลงข้อความบรรทัดเดียวข้อความหลายบรรทัดค่าตัวเลข ฯลฯ ในสถานการณ์ที่ต้องการรูปแบบดังกล่าวมักจะมีโปรแกรมการสร้างแบบฟอร์มแบบไดนามิก บทความนี้แนะนำระบบที่บันทึกข้อมูลนิยามฟอร์มในฐานข้อมูลใช้สคริปต์ ASP เพื่อสร้างรหัส HTML แบบฟอร์มแบบไดนามิกและสคริปต์เพื่อตรวจสอบการป้อนข้อมูลฟอร์ม
1. กำหนดโครงสร้างตารางฐานข้อมูล
คุณมักจะเห็นรูปแบบเช่น "การสำรวจรายสัปดาห์" บนเว็บซึ่งเป็นรูปแบบที่ต้องได้รับการปรับปรุงบ่อยครั้ง หากมีโปรแกรมที่สร้างแบบฟอร์มและสคริปต์การตรวจสอบแบบไดนามิกมันสามารถลดปริมาณงานของการสร้างแบบฟอร์มเหล่านี้ได้อย่างมาก
ในตัวอย่างการสร้างแบบฟอร์มและการตรวจสอบแบบไดนามิกของบทความนี้เราใช้ฐานข้อมูลการเข้าถึงเพื่อจัดเก็บข้อมูลคำจำกัดความเกี่ยวกับแบบฟอร์ม ในเวลาเดียวกันสำหรับการคำนวณอย่างง่ายข้อมูลที่ป้อนโดยผู้ใช้ในแบบฟอร์มจะถูกบันทึกลงในฐานข้อมูลเดียวกัน การกำหนดแบบฟอร์มต้องใช้สองตาราง: ตารางแรก (definitons) ใช้เพื่อกำหนดฟิลด์อินพุตฟอร์มและตารางที่สอง (รายการ) เก็บข้อมูลเพิ่มเติมสำหรับแต่ละฟิลด์อินพุตเช่นรายการการเลือกสำหรับรายการการเลือก
ตารางกำหนดการมีฟิลด์ต่อไปนี้:
FieldName - กำหนดชื่อตัวแปรให้กับฟิลด์อินพุตของแบบฟอร์ม
ป้ายกำกับ - นั่นคือฉลากข้อความข้อความพร้อมท์ที่แสดงอยู่ด้านหน้าของฟิลด์อินพุต
ประเภท - อักขระตัวเดียวที่แสดงถึงฟิลด์อินพุตฟอร์มและประเภทของค่าอินพุต
รายละเอียดมีดังนี้:
(t) กล่องป้อนข้อความเช่น <inputType = "text">
(n) กล่องป้อนข้อความ แต่จำเป็นต้องมีค่าตัวเลข
(m) เนื้อหาที่น่าทึ่งใช้สำหรับความคิดเห็นหรืออินพุตข้อความจำนวนมากอื่น ๆ เป็นกล่องแก้ไขข้อความหลายบรรทัด
(b) ต้องการ "ใช่" หรือ "ไม่" ในการใช้งานนี้จะใช้กล่องกาเครื่องหมายเพื่อรับอินพุตนี้และป้ายข้อความของช่องทำเครื่องหมายคือ "ใช่" หากผู้ใช้เลือกค่าส่งคืนคือ "เปิด"
(R) ปุ่มตัวเลือก
(l) กล่องรายการแบบเลื่อนลง
ขั้นต่ำ - ใช้ได้กับค่าอินพุตตัวเลขเท่านั้นค่าต่ำสุดจะได้รับที่นี่ ในตัวอย่างนี้มีกล่องอินพุตดิจิตอล "อายุ" (อายุ) และค่าต่ำสุดถูกตั้งค่าเป็น 1
สูงสุด - ค่าของฟิลด์นี้เกี่ยวข้องกับแบบฟอร์มฟิลด์อินพุต สำหรับกล่องอินพุตดิจิตอลจะแสดงถึงค่าสูงสุดที่อนุญาต ตัวอย่างเช่นค่าสูงสุดของ "อายุ" คือ 100 สำหรับกล่องอินพุตข้อความสูงสุดแสดงถึงจำนวนอักขระสูงสุดที่อนุญาต สำหรับกล่องแก้ไขข้อความหลายบรรทัด Max แสดงจำนวนบรรทัดของข้อความในพื้นที่ที่มองเห็นได้
จำเป็น - ระบุว่าจำเป็นต้องป้อนหรือไม่ หากไม่มีการป้อนอินพุตตัวตรวจสอบอินพุตจะรายงานข้อผิดพลาด ในแบบฟอร์มค่าที่ต้องป้อนจะถูกทำเครื่องหมายด้วยเครื่องหมายดอกจันและแจ้งให้ผู้ใช้ป้อนค่าของคลาสเป็นเชิงอรรถ
แบบฟอร์มตัวอย่างในบทความนี้เป็นแบบสอบถามโปรแกรมเมอร์ ASP คำจำกัดความของแบบฟอร์มนี้ในตาราง definitons เป็นหลักดังนี้:
FieldNamelabeltypeminMaxRequired
ชื่อชื่อข้อความ (t) -50 ไม่
อายุอายุ (n) 1100 no
ปุ่มวิทยุเพศเพศ (R)-ใช่