注册程序,用户名密码存入数据库

user表
表字段包含id username password error_count
注册的程序,账号密码存在数据库里面,密码要存密文的
1.输入input(username,password,cpwd)

2.通过select语句,判断用户存在不存在

3.不存在就执行insert语句
4.password加密一下

import pymysql,hashlib

def op_mysql(sql):
    db_info = {'user': 'xxx', 'password': 'xxxxxx',
            'host': '127.0.0.1', 'db': 'xxx', 'port': 3306, 'charset': 'utf8',
            'autocommit': True}
    conn = pymysql.connect(**db_info)  # 建立连接
    cur = conn.cursor(pymysql.cursors.DictCursor)  # 游标
    cur.execute(sql)  # 执行sql语句,insert 、update 、delete
    result = cur.fetchall()
    cur.close()
    conn.close()
    return result

for i in range(3):
    username = input('请输入用户名:').strip()
    password = input('请输入密码:').strip()
    cpasswd = input('请再次确认密码:').strip()
    sql1 ='select * from user where username="%s";'%(username)
    if username=='' or password=='' or cpasswd=='':
        print('用户名或密码不能为空!')
    elif password != cpasswd:
        print('两次输入的密码不一致,请重新注册')
    elif  op_mysql(sql1):
        print('用户名已存在,请重新注册')
    else:
        ha_pwd =hashlib.md5(password.encode())
        md5_pwd = ha_pwd.hexdigest()
        sql2 = 'insert into user (username,password,error_count) values ("%s","%s",0);'%(username,md5_pwd)
        op_mysql(sql2)
        print('%s,恭喜注册成功!' % username)
        break
else:
    print('注册失败,请稍后再试!')

猜你喜欢

转载自www.cnblogs.com/cathyg/p/11780014.html