zoukankan      html  css  js  c++  java
  • python_注册入口,登录

    #作业3、写一个注册的功能,要求数据存在数据库里面
              # 1)、名字为空、已经存在都要校验
              # 2)、校验通过之后,密码要存成密文的
    import pymysql
    import hashlib
    def CheckUserInSql(user):
        conn = pymysql.connect(host='118.24.3.40',user='jxz',
                        password='123456',port=3306,db='jxz',charset='utf8')
        cur = conn.cursor(pymysql.cursors.DictCursor) #加了这个参数,返回值是字典形式的元组
        sql = 'select * from app_myuser where username="%s";' %user # 查看数据库是否以及存在user用户
        cur.execute(sql) #只是执行sql,并不会返回数据
        res = cur.fetchall()
        cur.close()  # 关闭游标
        conn.close()  # 关闭连接数据库
        if len(res) == 0:
            return True
        else:
            return False
    
    def isNotNone(user):
        if str(user).strip()=='':
            return False
        else:
            return True
    def StoreInSQL(user,pwd,admin):
        conn = pymysql.connect(host='118.24.3.40', user='jxz',
                               password='123456', port=3306, db='jxz', charset='utf8')
        cur = conn.cursor(pymysql.cursors.DictCursor)  # 加了这个参数,返回值是字典形式的元组
        sql = 'insert into app_myuser (username,passwd,is_admin) values ("%s","%s",%d);'%(user,pwd,admin)
        cur.execute(sql)
        conn.commit()
        cur.close()
        conn.close()
    def my_md5(s):
        news = str(s).encode()
        m = hashlib.md5(news)
        return m.hexdigest()
    
    user = input('请输入注册的用户名:')
    pwd = input('请输入注册密码:')
    is_admin = int(input('请输入注册账号的权限(0非管理员/1管理员):'))
    if isNotNone(user):
        if CheckUserInSql(user):
            pwdmd5 = my_md5(pwd)
            StoreInSQL(user,pwdmd5,is_admin)
        else:
            print('输入的账号已经存在!')
    else:
        print('输入的账号不能为空!')
    
    
    
    # 4、登陆的功能
    #           登录的账号密码从数据库里面取,
    #           如果输入用户不存在要提示
    def CheckUserInSql(user):
        conn = pymysql.connect(host='118.24.3.40',user='jxz',
                        password='123456',port=3306,db='jxz',charset='utf8')
        cur = conn.cursor(pymysql.cursors.DictCursor) #加了这个参数,返回值是字典形式的元组
        sql = 'select * from app_myuser where username="%s";' %user # 查看数据库是否以及存在user用户
        cur.execute(sql) #只是执行sql,并不会返回数据
        res = cur.fetchall()
        cur.close()  # 关闭游标
        conn.close()  # 关闭连接数据库
        if len(res) == 0:
            return True, res
        else:
            return False, res
    def my_md5(s):
        news = str(s).encode()
        m = hashlib.md5(news)
        return m.hexdigest()
    
    user = input('请输入登录账号:')
    pwd = input('请输入登录密码:')
    pwdmd5 = my_md5(pwd)
    Condition, res = CheckUserInSql(user)
    if not Condition:
        if res[0]['passwd'] == pwdmd5:
            print('恭喜%s登录成功!'%user)
        else:
            print('密码错误!')
    else:
        print('账号不存在!')
  • 相关阅读:
    Nginx之keepalived高可用工具
    Linux安装Nginx
    Nginx解决服务器宕机问题
    前端知识小札
    SQL入门(3):定义约束/断言assertion/触发器trigger
    SQL入门(2): Oracle内置函数-字符/数值/日期/转换/NVL/分析函数与窗口函数/case_decode
    Excel VBA入门(8): 快捷键/内置常量/代码调试/错误处理/代码优化
    小学生都看得懂的C语言入门(6): 字符串
    小学生都看得懂的C语言入门(5): 指针
    小学生都看得懂的C语言入门(4): 数组与函数
  • 原文地址:https://www.cnblogs.com/mercywym/p/10124506.html
Copyright © 2011-2022 走看看