โปรแกรมปฏิทินกิจกรรมส่วนตัว - ไม่มีข้อมูลฟอร์มในโปรแกรม PHP
จนถึงตอนนี้ในโปรแกรมปฏิทินกิจกรรมส่วนบุคคลเราได้เขียนรหัสเพื่อความเป็นไปได้ว่ายังไม่ได้ส่งแบบฟอร์มเว็บรายการกิจกรรม ($ _POST ['ส่ง'] ว่างเปล่า) หากเป็นกรณีนี้โปรแกรมจะเริ่มต้นตัวแปรให้เป็นโมฆะก่อนการเรียกใช้ฟังก์ชันที่จะแสดงฟอร์มในเว็บเบราว์เซอร์เป็นครั้งแรก ตอนนี้เราจะโค้ดสำหรับความเป็นไปได้ว่าแบบฟอร์มนั้นถูกส่งไปแล้ว ($ _POST ['submit'] ไม่ว่างเปล่า) หากเป็นกรณีนี้มีสองตัวเลือกสำหรับขั้นตอนถัดไป
  1. หากมีการส่งแบบฟอร์มและผู้ใช้ไม่ได้ให้ข้อมูลที่จำเป็นทั้งหมดโปรแกรมจะแสดงแบบฟอร์มในเว็บเบราว์เซอร์อีกครั้งพร้อมกับข้อความแสดงข้อผิดพลาด

  2. หากมีการส่งแบบฟอร์มและข้อมูลที่ต้องการจะไม่หายไปโปรแกรมจะประมวลผลข้อมูลและส่งไปยังฐานข้อมูล
มาทำงานกับตัวเลือกแรกกันก่อน เราจะทดสอบว่ามีข้อมูลที่ขาดหายไปได้อย่างไร ก่อนอื่นเราต้องตัดสินใจว่าต้องการข้อมูลใดและตัวเลือกใด สำหรับโปรแกรมปฏิทินอย่างง่ายนี้ข้อมูลที่จำเป็นเท่านั้นคือชื่อเรื่องของกิจกรรมและเวลา / วันที่เริ่มต้น ช่องป้อนข้อมูลอื่น ๆ ในแบบฟอร์มเว็บเป็นตัวเลือก นี่คือฟิลด์ป้อนข้อมูลห้าฟิลด์ที่จำเป็นในเว็บฟอร์มและอีกหกช่องเป็นตัวเลือก
จำเป็นต้องใช้

act_title
act_month_1
act_day_1
act_year_1
act_hour_1
ไม่จำเป็น

act_desc
act_month_2
act_day_2
act_year_2
act_hour_2
act_status

ขั้นตอนแรกของเราคือการใช้ PHP ถ้าคำสั่งเพื่อทดสอบข้อมูลที่ขาดหายไปสำหรับแต่ละช่องป้อนข้อมูลที่จำเป็นและเป็นตัวเลือก เราจะสร้างตัวแปรที่ชื่อว่า $ error_message และตั้งค่าเริ่มต้นเป็น ไม่. หากมีข้อมูลขาดหายไปตัวแปรจะถูกตั้งค่าเป็น ใช่. นี่คือส่วนแรกของรหัส

$ error_message = "ไม่";

ถ้า (ที่ว่างเปล่า ($ _ POST [ 'act_title']))
{
$ error_message = "ใช่";
$ pass_act_title = "";
}
อื่น {$ pass_act_title = $ _POST ['act_title']; }


if (ว่างเปล่า ($ _ POST ['act_desc'])) {$ pass_act_desc = ""; }
อื่น {$ pass_act_desc = $ _POST ['act_desc']; }
. . .
. . .

รหัสนี้ทำอะไร? โปรแกรมจะตั้งค่าตัวแปร $ error_message เป็นครั้งแรก ไม่. มันจะทดสอบฟิลด์ป้อนข้อมูลสิบเอ็ดฟิลด์ถัดไปจากแต่ละแบบฟอร์ม ในรหัสข้างต้นเรากำลังทดสอบตัวแปรสองตัวแรกคือ act_title และ act_desc อย่างไรก็ตามรหัสทั้งหมดจะทดสอบตัวแปรอีก 9 ตัวเช่นกัน มีสามผลลัพธ์ที่เป็นไปได้

  1. หากโปรแกรมพบข้อมูลที่ขาดหายไปจาก จำเป็นต้องใช้ ฟิลด์อินพุต (act_title) มันจะตั้งค่าตัวแปรพารามิเตอร์ที่สอดคล้องกันเป็นโมฆะและตัวแปร $ error_message เป็น ใช่.

  2. หากโปรแกรมพบข้อมูลที่ขาดหายไปจาก ไม่จำเป็น เขตข้อมูล (act_desc) ก็จะตั้งค่าตัวแปรพารามิเตอร์เป็นโมฆะ แต่ ไม่ ตั้งค่า $ error_message เป็น ใช่.

  3. หากข้อมูลสำหรับฟิลด์อินพุตไม่หายไปข้อมูลจะดำเนินการกับคำสั่ง else มันจะตั้งค่าตัวแปรพารามิเตอร์เป็นค่าของตัวแปร $ _POST [''] ที่สอดคล้องกันและตัวแปร $ error_message จะ ไม่ ได้รับผลกระทบ
หากโปรแกรมทำให้ผ่านการทดสอบตัวแปร $ _POST ทั้งหมดสิบเอ็ดตัวและตัวแปร $ error_message ยังคงถูกตั้งเป็น ไม่สิ่งนี้บอกโปรแกรมว่าไม่มีข้อมูลที่จำเป็นหายไป ในกรณีนี้ข้อมูลจะถูกประมวลผลเพิ่มเติมและส่งผ่านไปยังฐานข้อมูล อย่างไรก็ตามหากตัวแปร $ error_message ถูกตั้งค่าเป็น ใช่นี่หมายความว่าฟิลด์ที่ต้องการอย่างน้อยหนึ่งช่องขาดข้อมูล โปรแกรมจะเรียกใช้ฟังก์ชัน Activity_Entry_Form อีกครั้ง เนื่องจากเราได้ตั้งค่าของตัวแปรพารามิเตอร์เป็นโมฆะ (สำหรับข้อมูลที่ขาดหายไป) หรือเป็นค่าของตัวแปร $ _POST ที่สอดคล้องกันเราจึงพร้อมที่จะส่งพวกเขาด้วยการเรียกใช้ฟังก์ชัน

ถ้า ($ error_message == "ใช่")
{
Activity_Entry_Form ($ pass_act_title, $ pass_act_desc,
$ pass_act_month_1, $ pass_act_day_1, $ pass_act_year_1,
$ pass_act_hour_1, $ pass_act_month_2, $ pass_act_day_2,
$ pass_act_year_2, $ pass_act_hour_2, $ pass_act_status);
}
อื่น {ประมวลผลข้อมูลเพิ่มเติม}
บันทึก--ลูกศร บ่งชี้ว่ารหัสถูกห่อเป็นบรรทัดที่สองและควรจะเป็นจริงในบรรทัดเดียว

ขั้นตอนต่อไปคือการปรับฟังก์ชั่น Activity_Entry_Form เพื่อจัดการข้อความแสดงข้อผิดพลาดใหม่

หมายเหตุ - จุดประสงค์ของบทช่วยสอนนี้คือการสร้างโปรแกรมปฏิทินกิจกรรมส่วนตัวสำหรับใช้ส่วนตัวและสอนพื้นฐานของฐานข้อมูล PHP และ MySQL ฉันไม่ได้รวมคุณสมบัติด้านความปลอดภัยเช่นการป้องกันข้อมูลที่เป็นอันตราย นั่นจะทำให้การสอนนี้ซับซ้อนเกินไปสำหรับผู้ฝึกหัด หากคุณกำลังสร้างโปรแกรมสำหรับเว็บคุณต้องการรวมความปลอดภัยดังกล่าวไว้ในรหัสโปรแกรมของคุณ