作者:用户r5oydafsky | 来源:互联网 | 2023-09-15 14:23
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152from
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| from flask import Flask,render_template
from flask import request
import sqlite3
app = Flask(__name__)
app.config.update(dict(
SECRET_KEY = 'NI CAI CAI KAN'
))
@app.route('/',methods=['GET','POST'])
def Home():
return " Welcome to home.Please login"
@app.route('/login',methods=['POST','GET'])
def login():
cOnn= sqlite3.connect('user.db')
cu = conn.cursor()
try:
cu.execute("create table user(users text primary key not null,\
pass text not null)")
except sqlite3.OperationalError:
pass
if request.method == 'POST':
u = request.form['username']
p = request.form['password']
cu.execute('select *from user where users=%s' %(u))
data = cu.fetchone()
if u==data[0] and p==data[1]:
return 'Login!'
elif u!=data[0] or p != data[1]:
return 'Username or password error!'
else:
return 'Please sign up!'
if request.method == 'GET':
return render_template("login.html")
@app.route('/register',methods=['GET','POST'])
def register():
cOnn= sqlite3.connect('user.db')
cu = conn.cursor()
try:
cu.execute("create table user(user text primary key not null,\
pass text not null)")
except sqlite3.OperationalError:
pass
if request.method == 'GET':
return render_template('register.html')
if request.method == 'POST':
u = request.form['username']
p = request.form['password']
cu.execute('insert into user(users,pass) values(%s,%s)' %(u,p))
conn.commit()
return 'register!'
if __name__ == '__main__':
app.run(debug=True) |
再注册页面输入abc作为账号密码
提示sqlite3.OperationalError: table user has no column named abc
尝试过将request.form改成request.from.get['username',None]结果报错
method is not subscriptable。。
这是注册页面...