Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @app.route("/register", methods=["GET", "POST"])
- def register():
- """Register user."""
- if request.method == "POST":
- # ensure username was submitted
- if not request.form.get("username"):
- return apology("Missing username!")
- # ensure password was submitted
- elif not request.form.get("password"):
- return apology("Missing password!")
- # ensure password and confirmation match
- elif not request.form.get("password") == request.form.get("2nd_password"):
- return apology("Your password and confirmation doesn't match")
- # to store password in hash
- hashed_password = pwd_context.hash(request.form.get("password"))
- # check if username already exists
- result = db.execute("SELECT * FROM users WHERE username = :username", username=request.form.get("username"))
- if result[0]["username"] == request.form.get("username"):
- return apology("Username already exists")
- else:
- db.execute("INSERT INTO users (username, hash) VALUES(:username, :hash)", username=request.form.get("username"), hash=hashed_password)
- row = db.execute("SELECT * FROM users WHERE username = :username", username=request.form.get("username"))
- # store registered user in session
- session["user_id"] = row[0]["id"]
- # redirect user to home page
- return redirect(url_for("index"))
- # else if user reached route via GET (as by clicking a link or via redirect)
- else:
- return render_template("register.html")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement