ให้เรตสมาชิก: 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
ฮิต
6412
ผู้สร้างเอกสาร
ae
วันที่สร้างเอกสาร
2017-06-27 18:40:26

python_flask_form.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 8.28 KB

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

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


 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
สอบถามวิธีการใส่ค่าที่ต้องการใน type="number" เป็นตัวเลขได้ทั้งบวก ลบ และทศนิยมที่มีค่าเป็นบวกและลบ แต่ไม่เอา 0 ค่ะ
โดย pprn ส 18 ส.ค. 2018 8:14 pm บอร์ด HTML CSS
0
10
ส 18 ส.ค. 2018 8:14 pm โดย pprn
B - หน้า Contact ของลูกค้ามีปุ่มติ๊กเกินมา
โดย thatsawan ส 18 ส.ค. 2018 6:59 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
3
ส 18 ส.ค. 2018 6:59 pm โดย thatsawan
อบรมระบบ ERP Odoo 11 ครั้งที่ 30 วันที่ 18 สิงหาคม 2561
โดย Lamduan ส 18 ส.ค. 2018 6:58 pm บอร์ด M066 - นางสาวลำดวน พันโอดเบี้ย
0
4
ส 18 ส.ค. 2018 6:58 pm โดย Lamduan
สอบถามวิธีการคำนวณหา Rate ค่ะ
โดย pprn ส 18 ส.ค. 2018 6:51 pm บอร์ด ถาม - ตอบ ธุรกิจ กฏหมาย ภาษี บัญชี
0
6
ส 18 ส.ค. 2018 6:51 pm โดย pprn
B - ฐานจริง User M017 สร้าง inv จากหน้า sale ไม่ได้
โดย thatsawan ส 18 ส.ค. 2018 4:57 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
2
ส 18 ส.ค. 2018 4:57 pm โดย thatsawan
B - ยกเลิกจ่ายชำระ เเต่ หัก ณ ที่จ่ายไม่ยกเลิก ทำให้ออกรายงา หัก ณ ที่จ่ายผิด
โดย thatsawan ส 18 ส.ค. 2018 4:44 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
0
3
ส 18 ส.ค. 2018 4:44 pm โดย thatsawan
Q - อัพเกรด Joomla 2.5 เป็น Joomla 3.8 แล้ว ขึ้น Error
โดย Parichat ส 18 ส.ค. 2018 3:57 pm บอร์ด Joomla Development
2
12
ส 18 ส.ค. 2018 7:02 pm โดย Parichat
Q - สอบถามวิธีใช้งาน split ครับ
โดย tatiya ส 18 ส.ค. 2018 2:52 pm บอร์ด Programming - C/C++ & java & Python
4
20
ส 18 ส.ค. 2018 3:40 pm โดย tatiya
งานประจำวันที่ 18 สิงหาคม 2561
โดย Lamduan ส 18 ส.ค. 2018 10:33 am บอร์ด M066 - นางสาวลำดวน พันโอดเบี้ย
1
9
ส 18 ส.ค. 2018 6:56 pm โดย Lamduan
งานประจำวันที่ 18 สิงหาคม 2561
โดย tatiya ส 18 ส.ค. 2018 10:02 am บอร์ด M065 - ตติยะ นาชัย
1
4
ส 18 ส.ค. 2018 7:26 pm โดย tatiya
เปลี่ยน data type จาก numeric เป็น character varying อย่างไร pg AdminIII
โดย kkeinezung ศ 17 ส.ค. 2018 9:43 pm บอร์ด Programming - PHP
0
33
ศ 17 ส.ค. 2018 9:43 pm โดย kkeinezung
จัดการที่อยู่ อำเภอ ตำบล จังหวัด โดยไม่ต้องพิมพ์เองยังไงคะ
โดย mook2LRC1 ศ 17 ส.ค. 2018 8:08 pm บอร์ด Joomla Development
2
24
ส 18 ส.ค. 2018 9:48 am โดย mook2LRC1
B - ใบกำกับภาษี วันที่ตกบรรทัด
โดย taemmynatchapon ศ 17 ส.ค. 2018 6:35 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
2
8
ส 18 ส.ค. 2018 11:26 am โดย taemmynatchapon
คำสั่งตัดสินใจการทำงาน PHP แบบ if และ switch
โดย tai14 ศ 17 ส.ค. 2018 5:53 pm บอร์ด PHP Knowledge
0
14
ศ 17 ส.ค. 2018 5:53 pm โดย tai14
สอบถามวิธีแก้เมื่อกด Start Mysqlไม่ได้ โปรแกรม Xampp
โดย tai14 ศ 17 ส.ค. 2018 5:09 pm บอร์ด Programming - PHP
1
50
ศ 17 ส.ค. 2018 6:53 pm โดย tsukasaz
แนะนำ module nltk ตัดคำที่ไม่จำเป็น
โดย tatiya ศ 17 ส.ค. 2018 4:55 pm บอร์ด Python Knowledge
0
6
ศ 17 ส.ค. 2018 4:55 pm โดย tatiya
ตัวดำเนินการ PHP
โดย tai14 ศ 17 ส.ค. 2018 4:04 pm บอร์ด PHP Knowledge
0
13
ศ 17 ส.ค. 2018 4:04 pm โดย tai14
B - ใบปริ้นบาร์โค้ดแสดงผลไม่ถูกต้อง [2018-08][005]
โดย thatsawan ศ 17 ส.ค. 2018 11:40 am บอร์ด Hachanna - Testter
0
3
ศ 17 ส.ค. 2018 11:40 am โดย thatsawan
ทำความรู้จักกับตัวแปร Array
โดย tai14 ศ 17 ส.ค. 2018 10:41 am บอร์ด PHP Knowledge
0
19
ศ 17 ส.ค. 2018 10:41 am โดย tai14
งานประจำวันที่ 17 สิงหาคม 2561
โดย Lamduan ศ 17 ส.ค. 2018 10:10 am บอร์ด M066 - นางสาวลำดวน พันโอดเบี้ย
1
6
ส 18 ส.ค. 2018 6:53 pm โดย Lamduan