Tags:
Forums: 

form+mod_wsgi+การรับค่า
เขียนเว็บรับค่าจากฟอร์มด้วย mod_wsgi ยังไงครับ
ผมพยายามเขียนเว็บในแบบ mod_wsgi โดยยังไม่ต้องการพึ่งเว็บเฟรมเวิร์ค
นะครับ พยายามอ่านหลายครั้งแล้วแต่ก็ไม่มีตัวอย่างเลย หาตัวอย่างลำบากนะครับ
เช่น php ใช้ $_POST["age"]; แต่ python ใน mod_wsgi ทำไม่เป็นนะครับ
ขอบคุณล่วงหน้าครับ

Get latest news from Blognone
By: bow_der_kleine
WriterAndroidUbuntu
on 8 September 2008 - 14:51 #64101
bow_der_kleine's picture

ลองดูในตัวอย่างนี้ครับ WSGI.zip

BioLawCom.De

By: preecha13 on 9 September 2008 - 11:54 #64106

พอดีไปเจอที่นี่ครับ http://pythonpaste.org/do-it-yourself-framework.html

from paste.request import parse_formvars

def application(environ, start_response):
fields = parse_formvars(environ)
if environ['REQUEST_METHOD'] == 'POST':
start_response('200 OK', [('content-type', 'text/html')])
return ['Hello, ', fields['name'], '!']
else:
start_response('200 OK', [('content-type', 'text/html')])
return ['

Name:

']

คงจะพอเอาไปประยุกต์ใช้ได้ แต่รู้สึกว่า code ข้างบนจะต้องติดตั้ง Paste (เป็น Framwork) เพิ่ม
แต่ตัวข้างล่างนี้ไม่ต้องครับ

-- coding: utf-8 --

from cgi import FieldStorage

page = """

ทดสอบ test001

%s

"""

def application(environ, start_response):
start_response('200 OK', [('content-type', 'text/html')])
if environ['REQUEST_METHOD'].upper() == 'POST':
fs = FieldStorage(fp=environ['wsgi.input'],environ=environ,keep_blank_values=1)
return [page%('Hello '+fs['name'].value+'!')]
else:
return [page%'

Name:

']