পাইথনের সিজিআই মডিউল সাধারণত পাইথনে সিজিআই প্রোগ্রাম লেখার শুরুর জায়গা। সিজিআই মডিউলের মূল উদ্দেশ্য হল একটি এইচটিএমএল ফর্ম থেকে একটি সিজিআই প্রোগ্রামে পাস করা মানগুলি বের করা। বেশিরভাগই একটি HTML ফর্মের মাধ্যমে CGI অ্যাপ্লিকেশনগুলির সাথে যোগাযোগ করে। একটি ফর্মে কিছু মান পূরণ করে যা সম্পাদিত ক্রিয়াটির বিশদ বিবরণ নির্দিষ্ট করে, তারপরে আপনার স্পেসিফিকেশন ব্যবহার করে এটির ক্রিয়া সম্পাদন করতে CGI-কে কল করুন।
আপনি একটি HTML ফর্মের মধ্যে অনেক ইনপুট ক্ষেত্র অন্তর্ভুক্ত করতে পারেন যা বিভিন্ন ধরণের হতে পারে (টেক্সট, চেকবক্স, পিকলিস্ট, রেডিও বোতাম ইত্যাদি)।
আপনার পাইথন স্ক্রিপ্ট আমদানি cgi দিয়ে শুরু হওয়া উচিত। CGI মডিউল দ্বারা করা প্রধান কাজ হল কলিং এইচটিএমএল ফর্মের সমস্ত ক্ষেত্রকে অভিধানের মতো ফ্যাশনে আচরণ করা। আপনি যা পান তা ঠিক পাইথন অভিধান নয়, তবে এটির সাথে কাজ করা সহজ। আসুন একটি উদাহরণ দেখি -
উদাহরণ
import cgi
form = cgi.FieldStorage() # FieldStorage object to
# hold the form data
# check whether a field called "username" was used...
# it might be used multiple times (so sep w/ commas)
if form.has_key('username'):
username = form["username"]
usernames = ""
if type(username) is type([]):
# Multiple username fields specified
for item in username:
if usernames:
# Next item -- insert comma
usernames = usernames + "," + item.value
else:
# First item -- don't insert comma
usernames = item.value
else:
# Single username field specified
usernames = username.value
# just for the fun of it let's create an HTML list
# of all the fields on the calling form
field_list = '<ul>\n'
for field in form.keys():
field_list = field_list + '<li>%s</li>\n' % field
field_list = field_list + '</ul>\n' ব্যবহারকারীর কাছে একটি দরকারী পৃষ্ঠা উপস্থাপন করার জন্য আমাদের আরও কিছু করতে হবে, তবে আমরা একটি জমা দেওয়ার ফর্মে কাজ করে একটি ভাল শুরু করেছি৷