এইচটিএমএল ফর্মগুলি ওয়েব ব্যবহারকারী এবং ওয়ার্ল্ড ওয়াইড ওয়েব, বিশেষ করে ওয়েব সার্ভার বা হোস্টের মধ্যে মিথস্ক্রিয়ার ধারণাটি চালু করতে শুরু করে। এই টিউটোরিয়ালটি আপনাকে এইচটিএমএল ফর্ম এবং সমস্ত বিল্ডিং ব্লক (এলিমেন্ট) এর সাথে পরিচয় করিয়ে দেয় যা একটি ফর্ম ডিজাইন এবং তৈরি করার সময় ওয়েব লেখকের কাছে উপলব্ধ।
একটি ফর্ম ঠিক যা বলে তা হল, একটি ফর্ম যা ব্যবহারকারী পূরণ করে৷ এটিতে বিভিন্ন ধরণের ইনপুট ক্ষেত্র থাকতে পারে যা আপনি নির্দিষ্ট করেন যখন আপনি ফর্মটি ডিজাইন করেন (যেমন নাম, ঠিকানা, বয়স, ইত্যাদি) এবং ফর্ম জমা দেওয়ার আগে ব্যবহারকারী পূরণ করেন৷ এইচটিএমএল ফর্মগুলির একমাত্র সমস্যা হল যে তারা নিজেদের দ্বারা খুব বেশি ব্যবহার করে না কারণ একটি ঐতিহ্যগত এইচটিএমএল ফর্ম শুধুমাত্র একটি বিশেষভাবে লিখিত সার্ভার-সাইড সিজিআই প্রোগ্রাম বা স্ক্রিপ্টের সাথে একত্রে কাজ করবে।
এই নিয়মের দুটি ব্যতিক্রম রয়েছে এবং প্রথম ব্যতিক্রম হল ‘mailto’ প্রোটোকল (নীচে দেখুন) যা ফর্মের বিষয়বস্তুগুলিকে আপনার নির্দিষ্ট করা একটি ই-মেইল ঠিকানায় মেল করতে সক্ষম করে। একই সময়ে CGI প্রোগ্রামিং বা স্ক্রিপ্টিংয়ের সাথে জড়িত না হয়েই HTML ফর্ম তৈরি করার অনুশীলন করার জন্য mailto ব্যবহার করা সত্যিই একটি দুর্দান্ত উপায়, তবে আপনাকে একটি নেটস্কেপ ব্রাউজার ব্যবহার করতে হবে কারণ মাইক্রোসফ্ট ব্রাউজারগুলি মেইলটো প্রোটোকলকে সম্পূর্ণরূপে সমর্থন করে না। অন্য ব্যতিক্রম হল ফর্ম যেখানে বিষয়বস্তু প্রক্রিয়াকরণের জন্য জাভাস্ক্রিপ্ট ফাংশনে পাঠানো হয়। এই বিষয়টি এই টিউটোরিয়ালের সুযোগের বাইরে এবং ওয়েব-ওয়াইজ-উইজার্ডের জাভাস্ক্রিপ্ট বিভাগে আরও সম্পূর্ণরূপে মোকাবিলা করা হবে।
এইচটিএমএল ফর্মগুলিতে জাভাস্ক্রিপ্ট এক্সটেনশনগুলি প্রবর্তনের পর থেকে ফর্ম এবং ফর্ম উপাদানগুলির জন্য আরও অনেকগুলি ব্যবহার বিকশিত হয়েছে এবং আবার এগুলি জাভাস্ক্রিপ্ট বিভাগে আরও সম্পূর্ণভাবে আলোচনা করা হবে। ইতিমধ্যে আমরা ফর্ম ট্যাগ এবং এর বৈশিষ্ট্যগুলি ব্যাখ্যা করি এবং জাভাস্ক্রিপ্ট এক্সটেনশন ছাড়াই উপলব্ধ প্রতিটি ফর্ম উপাদানগুলি প্রদর্শন করি৷
<form action=”receiver.php” method=”get” enctype=”multipart/form-data” target=”_self”>
<!– FORM ELEMENTS ENCLOSED BETWEEN FORM START AND FORM END TAGS –>
</form>
যখন ব্যবহারকারী ফর্ম জমা দেয় তখন ওয়েব ব্রাউজার ফর্মের বিষয়বস্তু পাঠায়। এটি একটি CGI প্রোগ্রাম (স্ক্রিপ্ট) হতে পারে যা ডেটা প্রক্রিয়া করে এবং এটি যেকোনো ওয়েব সার্ভারে হতে পারে। বিকল্পভাবে, আপনি যদি নেটস্কেপ ওয়েব ব্রাউজার ব্যবহার করেন তবে এটি একটি ই-মেইল ঠিকানা হতে পারে।
cgi program একটি প্রোগ্রাম বা স্ক্রিপ্ট যা একটি ওয়েব সার্ভারে একটি প্রক্রিয়া হিসাবে চলে এবং ব্যবহারকারীদের CGI ভেরিয়েবল অ্যাক্সেস করতে পারে। সিজিআই প্রোগ্রাম এবং স্ক্রিপ্টগুলি বিভিন্ন ভাষায় লেখা যেতে পারে যার মধ্যে ‘পার্ল’, ‘সি/সি++’ ইত্যাদি অন্তর্ভুক্ত রয়েছে।
mailto: একটি ইন্টারনেট প্রোটোকল (‘http:’, ‘ftp:’, ‘news:’, ইত্যাদির মতো) যা ইন্টারনেট ই-মেইল সিস্টেমের একটি গেটওয়ে প্রদান করে। Microsoft ব্রাউজারে সমর্থিত নয়।
ওয়েব সার্ভারে CGI ইন্টারফেসে ফর্মের বিষয়বস্তু পাস করতে কোন HTTP পদ্ধতি ব্যবহার করা হবে তা নির্দিষ্ট করে।
http হাইপার-টেক্সট ট্রান্সফার প্রোটোকল: ওয়ার্ল্ড ওয়াইড ওয়েবে একটি ওয়েব ব্রাউজার এবং একটি ওয়েব সার্ভারের মধ্যে যোগাযোগ সক্ষম করার জন্য একটি পূর্ব-নির্ধারিত প্রোটোকল।
cgi সাধারণ গেটওয়ে ইন্টারফেস: ওয়ার্ল্ড-ওয়াইড ওয়েব HTTP সার্ভার থেকে বাহ্যিক প্রোগ্রাম চালানোর জন্য একটি স্ট্যান্ডার্ড। CGI উল্লেখ করে কিভাবে HTTP অনুরোধের অংশ হিসেবে এক্সিকিউটিং প্রোগ্রামে আর্গুমেন্ট পাঠাতে হয়। এটি পরিবেশ ভেরিয়েবলের একটি সেটও সংজ্ঞায়িত করে। সাধারণত, প্রোগ্রামটি কিছু HTML তৈরি করবে যা ব্রাউজারে ফেরত পাঠানো হবে কিন্তু এটি URL পুনঃনির্দেশের অনুরোধও করতে পারে।
ফর্মের বিষয়বস্তু কীভাবে এনক্রিপ্ট করা উচিত তা নির্দিষ্ট করে।
সাধারণত, একটি CGI প্রোগ্রাম বা স্ক্রিপ্ট একটি HTML প্রতিক্রিয়া তৈরি করবে যা এটি ওয়েব ব্রাউজারে ফিরে যাবে। টার্গেট অ্যাট্রিবিউট নির্দিষ্ট করে যে প্রতিক্রিয়া কোথায় পাঠানো উচিত। সম্ভাব্য বিকল্প হল চারটি HTML ম্যাজিক টার্গেট নাম বা একটি নাম উইন্ডো বা ফ্রেম।