पर्सनल एक्टिविटीज कैलेंडर प्रोग्राम - PHP प्रोग्राम में मिसिंग फॉर्म डेटा
अब तक व्यक्तिगत गतिविधियों कैलेंडर कार्यक्रम में हमने इस संभावना के लिए कोड लिखा है कि गतिविधि प्रविष्टि वेब फॉर्म अभी तक प्रस्तुत नहीं किया गया है ($ _POST ['जमा करें]] खाली है)। यदि यह मामला है, तो प्रोग्राम फ़ंक्शन कॉल से ठीक पहले चर को शून्य करने के लिए आरंभ करेगा जो वेब ब्राउज़र में पहली बार फॉर्म प्रदर्शित करेगा। अब हम इस संभावना के लिए कोड देंगे कि फॉर्म जमा कर दिया गया है ($ _POST ['सबमिट'] खाली नहीं है)। यदि यह मामला है, तो अगले चरण के लिए दो विकल्प हैं।
  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 = "नहीं";

अगर (खाली ($ _ पोस्ट [ 'act_title']))
{
$ error_message = "हाँ";
$ pass_act_title = "";
}
और {$ pass_act_title = $ _POST ['act_title']; }


अगर (खाली ($ _ POST ['act_desc'])) {$ pass_act_desc = ""; }
और {$ pass_act_desc = $ _POST ['act_desc']; }
. . .
. . .

यह कोड क्या करता है? कार्यक्रम पहले $ error_message चर को सेट करेगा नहीं। यह अगले ग्यारह डेटा इनपुट फ़ील्ड में से प्रत्येक का परीक्षण करेगा। ऊपर दिए गए कोड में, हम पहले दो चर act_title और act_desc के लिए परीक्षण कर रहे हैं। हालांकि, पूरे कोड अन्य 9 चर के लिए भी परीक्षण करेंगे। तीन संभावित परिणाम हैं।

  1. यदि प्रोग्राम एक से लापता डेटा का सामना करता है अपेक्षित इनपुट फ़ील्ड (act_title), यह अशक्त पैरामीटर वैरिएबल को शून्य और $ error_mageage वैरिएबल पर सेट करेगा हाँ.

  2. यदि प्रोग्राम एक से लापता डेटा का सामना करता है ऐच्छिक डेटा फ़ील्ड (act_desc), यह पैरामीटर चर को शून्य करने के लिए सेट करेगा नहीं $ error_message को सेट करें हाँ.

  3. यदि किसी इनपुट फ़ील्ड का डेटा गायब नहीं है, तो वह अन्य स्टेटमेंट का प्रदर्शन करेगा। यह पैरामीटर वैरिएबल को इसी $ _POST [''] वैरिएबल और $ error_message वैरिएबल के मान पर सेट करेगा नहीं प्रभावित हो।
यदि कार्यक्रम इसे सभी ग्यारह $ _POST चर के लिए परीक्षण के माध्यम से बनाता है और $ error_message चर अभी भी सेट है नहीं, यह प्रोग्राम को बताता है कि कोई आवश्यक डेटा गायब नहीं है। इस मामले में, डेटा को आगे संसाधित किया जाएगा और डेटाबेस को पास किया जाएगा। हालाँकि, अगर $ error_message वैरिएबल को सेट किया गया है हाँ, इसका मतलब है कि कम से कम एक आवश्यक फ़ील्ड में लापता डेटा है। प्रोग्राम फिर से गतिविधि_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 डेटाबेस की मूल बातें सिखाना है। मैंने किसी भी सुरक्षा सुविधाओं को शामिल नहीं किया है जैसे दुर्भावनापूर्ण इनपुट डेटा को रोकना। यह इस ट्यूटोरियल को नौसिखिए के लिए बहुत जटिल बना देगा। यदि आप वेब के लिए कोई प्रोग्राम बना रहे हैं, तो आप अपने प्रोग्राम कोड में ऐसी सुरक्षा को शामिल करना चाहेंगे।







वीडियो निर्देश: पीएचपी फार्म हैंडलिंग ट्यूटोरियल - मिलता है, पोस्ट में & amp; अनुरोध वैश्विक चर | जानें पीएचपी प्रोग्रामिंग (मई 2024).