External Exam Download Resources Web Applications Games Recycle Bin

Getting Input


template.html:
<!doctype html>
<title>getting input</title>

{% if not submittedYet %}

    <form action="/log" method="post">
      Enter your username and click Submit:<br>
      <input type="text" name="username" value="Yasuo">
      <br>
      <input type="submit" value="Submit">
    </form>

{% else %}

    <h1>welcome back {{ user }}</h1>

{% endif %}
site.py:
from flask import Flask
from flask import render_template
from flask import request

app = Flask(__name__)

@app.route("/log", methods=["POST"])
def submittedForm():
    return render_template("template.html",
                           submittedYet = True,
                           user = request.form["username"])

@app.route("/")
def start():
    return render_template("template.html",
                           submittedYet = False)

app.run(host="0.0.0.0", port=5000)

Challenges
  1. try GET instead of POST..
    change template.html:
    <form action="/log" method="get">
    change site.py:
    @app.route("/log", methods=["GET"])
    and:
    user = request.args.get("username")
    how does GET differ from POST? what situations might i use either?
  2. try retrieving and displaying data from other simple HTML form controls:
  3. make a simple paper rock scissors game