提供的绑定数量不正确。当前语句使用1,并且提供了5

时间:2019-03-23 17:12:56

标签: python python-3.x python-2.7

我正在尝试创建一个Web应用程序,我想检查数据库中是否存在用户名,还检查密码哈希,因为我正在哈希数据库中的所有密码,但是我得到了错误:

  

提供的绑定数量不正确。当前语句使用1,并且提供了5个

这是我的代码:

@app.route("/login", methods=["GET", "POST"])
def login():
    """Log user in"""

    # Forget any user_id
    session.clear()

    # User reached route via POST (as by submitting a form via POST)
    if request.method == "POST":

        # Ensure username was submitted
        if not request.form.get("username"):
            return apology("must provide username", 403)

        # Ensure password was submitted
        elif not request.form.get("password"):
            return apology("must provide password", 403)

        # Query database for username
        with sqlite3.connect("finance.db") as con:
            username=request.form.get("username")
            cur = con.cursor()
            cur.execute("SELECT * FROM users WHERE username = ?", (username))
            con.commit()


        # Ensure username exists and password is correct
        results = cur.fetchone()

        if results != 1 or not check_password_hash(results[0]["hash"], request.form.get("password")):
            return apology("invalid username and/or password", 403)

        # Remember which user has logged in
        session["user_id"] = rows[0]["id"]

        # Redirect user to home page
        return redirect("/")

    # User reached route via GET (as by clicking a link or via redirect)
    else:
        return render_template("login.html")

0 个答案:

没有答案