ให้เรตสมาชิก: 4 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งาน
 

บทที่ 2 ขั้นตอนการเขียน python โดยใช้ Flask การรับค่าผ่านทางหน้าฟอร์มแล้วทำการแสดงผลผ่าน Wab

ขั้นตอนการเขียน python (ไพ-ธัน) โดยใช้ Flask (ฟลาซค) การรับค่าผ่านทางหน้าฟอร์มแล้วทำการแสดงผลผ่านฟอร์ม การรับค่าจากแบบฟอร์มนั้น จะใช้ตัวแปรอยู่ 3 แบบด้วยกันคือ $_GET (เก้ต), $_POST (โพส), $_REQUEST (รีเควส) ซึ่งแต่ละแบบจะมีการส่งค่าดังนี้ 
1. $_GET จะส่งค่าผ่าน URL เราจะเห็นพารามิเตอร์ที่ส่งไปต่อท้าย URL ของหน้านั้นๆ
2. $_POST จะส่งแบบไม่แสดงพารามิเตอร์ให้เห็น
3. $_REQUEST จะเป็นตัวแปรที่ใช้รับค่าทั้งที่ส่งมาแบบ $_GET และ $_POST

python
python

ขั้นตอนที่ 1 ให้ทำการสร้างไฟล์ไว้ใน Project โดยให้ไฟล์แรกชื่อ index.html ไฟล์ที่สองชื่อ result.py

ขั้นตอนที่ 2 ให้เราเปิดไฟล์  result.py เพื่อทำการเขียนโค๊ด ตามรูปแบบด้านล่าง

หลักการทำงาน

def index():  #โมดูลรับค่าจากไฟล์ index.html โดยการส่งค่าในรูปแบบ POST
def save():  #โมดูลแสดงข้อมูล

#-*- coding=utf-8 -*-
from flask import Flask
from flask import render_template
from flask import request
app = Flask(__name__)
@app.route("/")
def index(): #โมดูลรับค่าจากไฟล์ index.html โดยการส่งค่าในรูปแบบ POST
    return render_template('index.html')
@app.route('/save', methods=['POST'])
def save(): #โมดูลแสดงข้อมูล
    x = dict(request.form.items())
    return "รับค่าสำเร็จ %s"%(x)
app.run(debug=True)
เปิดไฟล์  result.py เพื่อทำการเขียนโค๊ด
เปิดไฟล์ result.py เพื่อทำการเขียนโค๊ด

ขั้นตอนที่ 3 ให้เราเปิดไฟล์ index.html เพื่อทำการเขียนโค๊ด ตามรูปแบบด้านล่าง

หลักการทำงาน

 โดยการรับค่าจาก Text ที่มีชื่อว่า save แล้วกดปุ่ม submit แล้วให้ form action="/save" โดยส่งค่าในรูปแบบ method="POST" ส่งไปยัง result.py

<form id="contact-form" action="/save", method="POST">
        <p>color<input type = "text" name = "save" /></p>
        <p><input type = "submit" value = "submit" /></p>
</form>
เปิดไฟล์ index.html เพื่อทำการเขียนโค๊ด
เปิดไฟล์ index.html เพื่อทำการเขียนโค๊ด

ขั้นตอนที่ 4 ให้เราลองทำการรัน project แล้วทำการกรอกข้อมูล แล้วแสดงผล

รัน project
รัน project

หน้าจอแสดงผล และผลลัพธ์ที่ได้จากการรับข้อมูล

หน้าจอแสดงผล และผลลัพธ์ที่ได้จากการรับข้อมูล
หน้าจอแสดงผล และผลลัพธ์ที่ได้จากการรับข้อมูล

บทความทั้งหมดนี้เป็นส่วนหนึกข้งการรับค่า ผ่านทางฟอร์ม สามารถนำไปประยุกต์ใช้ได้ เช่น รับข้อมูลผ่านฟอร์โดยการเพิ่มลงฐานข้อมูล ก็ทำได้

ชื่อ
บทเรียน Python Framework Flask Form
หมวดหมู่
Python Framework Flask, Python Framework Flask
ฮิต
5442
ผู้สร้างเอกสาร
ae
วันที่สร้างเอกสาร
2017-06-27 18:40:26

python_flask_form.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 8.28 KB

ผู้อัพโหลดไฟล์ ae

วันที่อัพโหลด 2017-06-27 11:26:29


 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
Q - ทำรูปภาพในหน้า order ให้เปลี่ยนสีตามที่เลือก
โดย Parichat พ 20 มิ.ย. 2018 11:17 am บอร์ด Joomla Dev
0
2
พ 20 มิ.ย. 2018 11:17 am โดย Parichat
เข้าดู supplier แล้วเกิด error
โดย wilawan พ 20 มิ.ย. 2018 10:33 am บอร์ด บริษัท เซนิธ เบบี้ แคร์ จำกัด - Tester
4
6
พ 20 มิ.ย. 2018 11:05 am โดย thatsawan
งานประจำวันที่ 20 มิถุนายน 2561
โดย Rujikon พ 20 มิ.ย. 2018 10:43 am บอร์ด M060 - นายรุจิกร พงษ์พิละ
0
2
พ 20 มิ.ย. 2018 10:43 am โดย Rujikon
งานประจำวันที่ 20 มิถุนายน 2561
โดย taemmynatchapon พ 20 มิ.ย. 2018 10:42 am บอร์ด M063 - ณัชพล ชัยวุฒิ
0
3
พ 20 มิ.ย. 2018 10:42 am โดย taemmynatchapon
B-ไม่สามารถดูข้อมูลใน Lead ได้
โดย watcharin พ 20 มิ.ย. 2018 10:14 am บอร์ด M.D.Soft Co.,Ltd. - Tester
0
5
พ 20 มิ.ย. 2018 10:14 am โดย watcharin
งานประจำวันที่ 20 มิถุนายน 2561
โดย Parichat พ 20 มิ.ย. 2018 9:48 am บอร์ด M061 - ปาริชาติ รัตโณภาส
0
1
พ 20 มิ.ย. 2018 9:48 am โดย Parichat
งานประจำวันที่ 20 มิถุนายน 2561
โดย wilawan พ 20 มิ.ย. 2018 9:43 am บอร์ด M062 - วิลาวัณย์ นักษัตรมณฑล
0
1
พ 20 มิ.ย. 2018 9:43 am โดย wilawan
ฺB - ทำไมไม่มีการคำนวณต้นทุนเงินบาทครับ [2018-06][006]
โดย Rujikon อ 19 มิ.ย. 2018 5:40 pm บอร์ด Hachanna - Testter
4
14
พ 20 มิ.ย. 2018 11:01 am โดย Rujikon
Q - จัดรูปให้ติดกัน
โดย Parichat อ 19 มิ.ย. 2018 3:23 pm บอร์ด Joomla Dev
28
53
อ 19 มิ.ย. 2018 7:00 pm โดย Parichat
Q - สอบถามการตั้งค่า Access Right ของ User ใหม่สำหรับใช้งาน WH/CLM [2018-06][001]
โดย Rujikon อ 19 มิ.ย. 2018 3:53 pm บอร์ด อาร์ซีพี โกลบอล จำกัด - Tester
0
8
อ 19 มิ.ย. 2018 3:53 pm โดย Rujikon
ขอวิธีเพิ่ม font ภาษาไทย ใน google docs ค่ะ
โดย watcharin อ 19 มิ.ย. 2018 2:46 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
3
26
อ 19 มิ.ย. 2018 3:15 pm โดย AePongsak
วิธี เพิ่ม Font (ฟอนต์) ใน Ubuntu
โดย AePongsak อ 19 มิ.ย. 2018 2:38 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
9
อ 19 มิ.ย. 2018 2:38 pm โดย AePongsak
Q - ใส่เงือนไขใน where 2 เงื่อนไขโดยใช้ and
โดย Parichat อ 19 มิ.ย. 2018 1:25 pm บอร์ด Joomla Dev
4
15
อ 19 มิ.ย. 2018 2:09 pm โดย Parichat
งานประจำวันที่ 19 มิถุนายน 2561
โดย taemmynatchapon อ 19 มิ.ย. 2018 10:28 am บอร์ด M063 - ณัชพล ชัยวุฒิ
2
15
อ 19 มิ.ย. 2018 7:36 pm โดย thatsawan
งานประจำวันที่ 19 มิถุนายน 2561
โดย Rujikon อ 19 มิ.ย. 2018 10:14 am บอร์ด M060 - นายรุจิกร พงษ์พิละ
7
22
พ 20 มิ.ย. 2018 6:35 am โดย mindphp
งานประจำวันที่ 19 มิถุนายน 2561
โดย Parichat อ 19 มิ.ย. 2018 9:37 am บอร์ด M061 - ปาริชาติ รัตโณภาส
1
4
อ 19 มิ.ย. 2018 7:14 pm โดย Parichat
Q - Too few arguments to function jshopProductShop::showProductImage(), 0 passed in D:\xampp\htdocs\doys-shop\components
โดย Parichat จ 18 มิ.ย. 2018 6:13 pm บอร์ด Joomla Dev
1
6
จ 18 มิ.ย. 2018 9:37 pm โดย Parichat
ฺB - รหัสสินค้าเรียงลำดับไม่ถูกต้อง [2018-06][005]
โดย Rujikon จ 18 มิ.ย. 2018 5:38 pm บอร์ด Hachanna - Testter
2
17
อ 19 มิ.ย. 2018 4:58 pm โดย Rujikon
R - ลบคำว่า Access this document directly in OpenERP ตอนที่ส่งเมลจากระบบหาลูกค้า @M017
โดย mindphp จ 18 มิ.ย. 2018 5:34 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
1
จ 18 มิ.ย. 2018 5:34 pm โดย mindphp
Review เครื่องพิมพ์แบบ DoT Matrix Printer (ดอตแมทริกซ์)
โดย AePongsak จ 18 มิ.ย. 2018 5:15 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
18
จ 18 มิ.ย. 2018 5:15 pm โดย AePongsak