### 标题:实现网页用户注册与登录系统


背景介绍

随着用户数据的积累,我们需要将用户信息存储在本地文件中,以便后续使用。本系统采用HTML、CSS和JavaScript实现前端用户输入界面,结合Python的文件操作功能,完成注册和登录流程,并保存用户数据到本地JSON文件中。


思路分析

  1. 用户输入验证逻辑
    用户输入用户名和密码后,需验证其合法性。验证逻辑包括:

    • 用户名长度 ≥ 3
    • 密码长度 ≥ 8
    • 包含至少一个字母、数字或符号
  2. 文件操作
    使用Python的json模块读取本地文件(例如user.json),保存数据时需确保数据结构为字典,便于后续读取和更新。

  3. UI界面设计

    • 页面包含注册表单和成功提示
    • 表单提交后,显示“注册成功”提示

代码实现

import json

# 保存用户数据到本地文件
def save_user_data(username, password):
    with open("user.json", "w", encoding="utf-8") as f:
        json.dump({  
            "username": username,  
            "password": password  
        }, f)

# 读取用户数据并验证  
def load_user_data():
    try:
        with open("user.json", "r", encoding="utf-8") as f:
            data = json.load(f)
            return data
    except FileNotFoundError:
        return {}

# 示例使用  
if __name__ == "__main__":
    username = input("请输入用户名: ")  
    password = input("请输入密码: ")  

    # 验证用户名和密码  
    if is_valid_username(username) and is_valid_password(password):
        result = load_user_data()
        print("注册成功:")  
        print(f"用户名: {result['username']}, 密码: {result['password']}")  
        save_user_data(username, password)
    else:
        print("注册失败:")  
        print("用户名必须至少3位字符,密码必须至少8位字符")  

# 验证函数  
def is_valid_username(username):
    return len(username) >= 3 and username.isalnum()

def is_valid_password(password):
    return len(password) >= 8 and not all(c.isalnum() for c in password)

总结

本项目通过以下方式实现用户注册与登录功能:

  • 使用HTML和CSS构建用户表单
  • 利用Python的文件操作功能保存用户数据
  • 使用字典结构保存数据,便于后续读取
  • 实现用户输入验证逻辑

项目完成后,用户数据将保存到本地文件,便于后续的使用和维护。


可执行性说明
代码可运行在本地环境中,只需在终端输入上述代码即可测试。文件路径“user.json”默认在项目目录下。


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注