用Python创建登陆页面,可以连接数据库,在页面可以查询和修改数据库的数据
时间: 2024-01-21 22:19:18 浏览: 65
和数据库连接的登陆页面及数据的修改查询
5星 · 资源好评率100%
当你创建登陆页面时,你需要使用一个web框架(比如 Flask 或 Django)来处理用户的请求和响应。同时,你可以使用Python内置的sqlite3模块来连接数据库并执行查询和修改操作。下面是一个简单的代码示例:
```python
from flask import Flask, request, session, redirect, url_for, render_template
import sqlite3
app = Flask(__name__)
app.secret_key = 'your_secret_key'
@app.route('/')
def index():
if 'username' in session:
return 'Logged in as %s' % session['username']
return redirect(url_for('login'))
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
username = request.form['username']
password = request.form['password']
conn = sqlite3.connect('database.db')
cursor = conn.cursor()
cursor.execute("SELECT * FROM users WHERE username=? AND password=?", (username, password))
user = cursor.fetchone()
conn.close()
if user:
session['username'] = user[0]
return redirect(url_for('index'))
else:
return 'Invalid username or password'
return render_template('login.html')
@app.route('/logout')
def logout():
session.pop('username', None)
return redirect(url_for('index'))
@app.route('/profile')
def profile():
if 'username' in session:
conn = sqlite3.connect('database.db')
cursor = conn.cursor()
cursor.execute("SELECT * FROM users WHERE username=?", (session['username'],))
user = cursor.fetchone()
conn.close()
return render_template('profile.html', user=user)
return redirect(url_for('login'))
if __name__ == '__main__':
app.run(debug=True)
```
在这个示例中,我们使用Flask框架创建了一个简单的Web应用程序,包含了登陆、注销和个人资料页面。我们在数据库中创建了一个名为users的表,用于存储用户的信息。在登陆页面中,当用户提交表单时,我们使用sqlite3模块连接数据库并查询用户名和密码是否匹配。如果匹配成功,我们将用户名存储在session中,并重定向到主页。在个人资料页面中,我们使用session中的用户名查询用户的信息并展示在页面上。
你可以按照这个示例代码进行修改,以适应你的具体需求。
阅读全文