您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

5.9---python连接数据库实现登录注册

bubuko 2022/1/25 19:50:59 python 字数 3148 阅读 1056 来源 http://www.bubuko.com/infolist-5-1.html

使用python连接数据库,实现账号登录与注册功能 ...

使用python连接数据库,实现账号登录与注册功能

import pymysql

# MySQL语句 插入数据行,即注册行为
register_sql = ‘insert into user(name,password) values(%s,%s)‘
# MySQL语句 查看name=username的数据行 判断是否已存在该用户
check_sql = ‘select name from user where BINARY name =%s ‘ # 加入BINARY关键字,可使查询结果区分大小写
# check_sql = ‘select name from user where name =%s ‘  # 这种查询无法区分大小写

# MySQL语句 查看所有符合该账号与密码的用户  若无则有误,若有则输出登录成功
login_sql = ‘select * from user where name=%s and password=%s‘

# 连接数据库函数
def MySQL_conn():
    conn = pymysql.connect(
        host = "127.0.0.1",
        port = 3306,
        user = "root",
        password = "123",
        database = "day48",
        charset = "utf8",
        autocommit = True
    )   # 连接数据库

    # 以字典形式输出数据  不设置则默认为元组类型输出
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    return cursor

# 登录函数
def login(cursor):
    while True:
        username = input("请输入用户名:").strip()
        if username.lower == "q":
            return
        password = input("请输入密码:").strip()

        res = cursor.execute(login_sql,(username,password))    # 返回值为数据行数,或字典键值对个数
        if res:
            print("登陆成功!")
            print(‘数据行数:‘,res)          # 2
            print(cursor.fetchall())        # [{‘id‘: 1, ‘name‘: ‘Jil‘, ‘password‘: ‘1118‘}, {‘id‘: 3, ‘name‘: ‘Jil‘, ‘password‘: ‘1118‘}]
            cursor.scroll(-1,"relative")    # 相对于光标所在的位置继续往前移动1位
            print(cursor.fetchall())        # 光标位置取到取到最后  [{‘id‘: 3, ‘name‘: ‘Jil‘, ‘password‘: ‘1118‘}]
            return
        else:
            print("用户名或密码错误!")

# 注册函数
def register(cursor):
    while True:
        username = input("注册用户名:").strip()
        if username.lower == "q":
            return
        password = input("设定密码:").strip()
        re_password = input("确认密码:").strip()

        if password != re_password:
            print("两次密码输入不一致,请重新输入!")
            continue
        res = cursor.execute(check_sql,(username))
        # print(res)
        # print(cursor.fetchall())
        if res:
            print("用户名【%s】已存在,请重新输入!"%username)
            continue
        else:
            cursor.execute(register_sql,(username,password))
            print("注册成功!")
            return


if __name__ == ‘__main__‘:
    cursor = MySQL_conn()
    while True:
        print("登录或注册".center(50,"="))
        print(‘‘‘1、登录
2、注册‘‘‘)
        cmd = input("请输入您需要的操作数:").strip()
        if cmd not in ["1","2",‘q‘]:
            print("请输入正确指令!")
        if cmd == ‘1‘:
            login(cursor)
        elif cmd == ‘2‘:
            register(cursor)
        else:
            break

5.9---python连接数据库实现登录注册

原文:https://www.cnblogs.com/zhubincheng/p/12868843.html


如果您也喜欢它,动动您的小指点个赞吧

除非注明,文章均由 laddyq.com 整理发布,欢迎转载。

转载请注明:
链接:http://laddyq.com
来源:laddyq.com
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


联系我
置顶