Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“sqlite3.Cursor”对象在Python中没有属性“\uuuu getitem\uuuu”错误_Python_Sqlite_Flask - Fatal编程技术网

“sqlite3.Cursor”对象在Python中没有属性“\uuuu getitem\uuuu”错误

“sqlite3.Cursor”对象在Python中没有属性“\uuuu getitem\uuuu”错误,python,sqlite,flask,Python,Sqlite,Flask,这是我的密码。每次按login时都会出现此错误: “sqlite3.Cursor”对象没有属性“\uuuu getitem\uuuu” 这是我的登录选项卡: @app.route('/', methods=['GET', 'POST']) def login(): error= None if request.method == "POST": with sql.connect("database.db") as con: cur = co

这是我的密码。每次按login时都会出现此错误:

“sqlite3.Cursor”对象没有属性“\uuuu getitem\uuuu”

这是我的登录选项卡:

@app.route('/', methods=['GET', 'POST'])
def login():
    error= None
    if request.method == "POST":
        with sql.connect("database.db") as con:
            cur = con.cursor()
            try:
                data = cur.execute("SELECT name FROM users WHERE name= ?",(request.form['username'],) )
                data.fetchone()

                if sha256_crypt.verify(request.form['password'], data[0]):
                    session['logged_in'] == True
                    session['username'] = request.form('username')
                    flash('Successfully logged in')
                    return redirect(url_for(hello_world))
                else:
                    error = "Invalid Password or User. Try again."

            except Exception as e:
                flash(e)
                return render_template('login.html',error=error)
        con.close()
        gc.collect()
    return render_template('login.html', error=error)

我做错了什么?

\uuu getitem\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。错误告诉您不能使用那样的游标。将数据[0]替换为data.fetchone返回的值。

读取doc:x=data.fetchone如果sha256_crypt.verifyrequest.form['password',x:像这样吗?我现在遇到另一个错误:哈希必须是unicode或字节,而不是sqlite3.cursory您的代码似乎正确,但您的错误令人惊讶。如果你打印X怎么办?它应该是元组或无元组。我想我的错误在我的sql语句中。。。data=cur.executeSELECT name FROM users WHERE name='?'request.form['username'],您肯定需要选择密码哈希,而不是名称,但这并不能解释错误消息。