import MySQLdb import hashlib mysql_user = 'root' mysql_pw = 'guess8' mysql_db = 'simplebbs' try: db=MySQLdb.connect(user=mysql_user,passwd=mysql_pw,db=mysql_db) except: db = None def md5str(s): m = hashlib.md5(s) r = '' for c in m.digest(): r += '%02x'%ord(c) return r def login(user,passwd): ''' return pair of status/md5''' db=MySQLdb.connect(user=mysql_user,passwd=mysql_pw,db=mysql_db) c = db.cursor() c.execute('select * from dzx_ucenter_members where username=%s',(user,)) r = [ x for x in c.fetchall() ] c.close() if r == []: return ['user not exist',''] else: r_md5 = r[0][2] r_salt = r[0][-2] if md5str(md5str(passwd)+r_salt) == r_md5: return ['login success',r_md5] else: return ['wrong password',''] def check_login(user,md5): db=MySQLdb.connect(user=mysql_user,passwd=mysql_pw,db=mysql_db) c = db.cursor() c.execute('select * from dzx_ucenter_members where username=%s',(user,)) r = [ x for x in c.fetchall() ] c.close() if r != []: return r[0][2] == md5 else: return False if __name__ == '__main__': print login('observer','3b25e07')