File:
Dưới save_file.py để xử lý file upload: import cgi, os import cgitb; cgitb.enable() form = cgi.FieldStorage() # Lay ten file o day fileitem = form['filename'] # Kiem tra xem file da duoc upload chua if fileitem.filename: fn = os.path.basename(fileitem.filename) open('/tmp/' + fn, 'wb').write(fileitem.file.read()) message = 'File co ten la "' + fn + '" duoc upload cong' else: message = 'Khong co file nao duoc upload' print """\ Content-Type: text/html\n http://vietjack.com/ Trang chia sẻ học online miễn phí Page 10 http://vietjack.com/python/index.jsp Copyright © vietjack.com%s
""" % (message,) Sử dụng Cookie Cookie ghi liệu text trường biến sau: Expires: Ngày cookie hết hạn Nếu trống, cookie hết hạn khách truy cập khỏi trình duyệt Domain: Tên miền site bạn Path: Path tới thuc mục trang web mà thiết lập cookie Nó trống bạn muốn thu nhận cookie từ thư mục trang Secure: Nếu trường chứa từ secure, cookie thu nhận server an toàn Nếu để trống, khơng tồn giới hạn Name=Value: Cookie thiết lập thu nhận dạng cặp key-value Thiết lập cookie Để gửi cookie tới trình duyệt dễ dàng Các cookie gửi với HTTP Header, trước trường Content-type Giả sử bạn muốn thiết lập UserID Password cookie, việc thực sau: print "Set-Cookie:UserID=XYZ;\r\n" print "Set-Cookie:Password=XYZ123;\r\n" print "Set-Cookie:Expires=Tuesday, 31-Nov-2015 23:12:40 GMT";\r\n" print "Set-Cookie:Domain=www.vietjack.com;\r\n" print "Set-Cookie:Path=/perl;\n" print "Content-type:text/html\r\n\r\n" http://vietjack.com/ Trang chia sẻ học online miễn phí Page 11 http://vietjack.com/python/index.jsp Copyright © vietjack.com .Rest of the HTML Content Qua ví dụ trên, bạn thấy sử dụng trường Set-Cookie để thiết lập cookie Việc thiết lập thuộc tính cookie Expires, Domain, Path tùy ý Bạn cần ý cookie thiết lập trước gửi trường "Content-type:text/html\r\n\r\n Thu nhận Cookie Để thu nhận tất Cookie thiết lập dễ dàng Các cookie lưu trữ biến mơi trường HTTP_COOKIE CGI có dạng sau: key1=value1;key2=value2;key3=value3 Dưới ví dụ đơn giản minh họa cách thu nhận cookie: # Import cac module de xu ly CGI from os import environ import cgi, cgitb if environ.has_key('HTTP_COOKIE'): for cookie in map(strip, split(environ['HTTP_COOKIE'], ';')): (key, value ) = split(cookie, '='); if key == "UserID": user_id = value if key == "Password": password = value print "Ten dang nhap = %s" % user_id print "Mat khau = %s" % password http://vietjack.com/ Trang chia sẻ học online miễn phí Page 12 ...http://vietjack.com /python/ index.jsp Copyright © vietjack.com print '' print '' print 'Lap trinh CGI Python< /title>' print '' print '' print 'Day la chuong trinh CGI dau... '' print 'Day la chuong trinh CGI dau tien Python< /h2>' print '' print '' Kết là: Day la chuong trinh CGI dau tien Python Đây Python script đơn giản để viết kết STDOUT chuẩn... SCRIPT_FILENAME Path đầy đủ tới CGI script SCRIPT_NAME Tên CGI script SERVER_NAME Tên CGI script SERVER_SOFTWARE Tên phiên phần mềm mà Server chạy Chương trình CGI sau liệt kê tất biến CGI import os print