Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sqlite3
- from hashlib import md5
- class Login():
- def __init__(self, database = "logins.db"):
- self.db = sqlite3.connect(database)
- self.sql = self.db.cursor()
- self.sql.execute("CREATE TABLE IF NOT EXISTS logins (username TEXT, password TEXT);")
- def new_user(self, username, password):
- self.sql.execute("INSERT INTO logins (username, password) VALUES (?, ?);",
- (username, md5(password.encode()).hexdigest()))
- self.db.commit()
- def check(self, username, password):
- self.sql.execute("SELECT * FROM logins WHERE username = ? AND password = ?",
- (username, md5(password.encode()).hexdigest()))
- data = self.sql.fetchall()
- if len(data) < 1:
- return False
- elif len(data) == 1:
- return True
- else:
- print("Duplicate login entry in database, please remove the duplicate user")
- db = Login()
- def login():
- username = input("Username: ")
- password = input("Password: ")
- if not db.check(username, password):
- return False
- else:
- return username
- def createnew():
- username = input("New Username: ")
- while True:
- password = input("New Password: ")
- retype = input("Retype Password: ")
- if password == retype:
- break
- print("Passwords did not match!")
- db.new_user(username, password)
- print('''
- ------------------------------
- 1) Login
- 2) Create New User
- ------------------------------
- ''')
- while True:
- option = input(">> ")
- if option == "1" or option.lower == "login":
- user = login()
- if user:
- print("Welcome", user)
- else:
- print("Invalid username/password!")
- continue
- break
- elif option == "2" or option.lower == "create new user":
- createnew()
- else:
- print("Please enter one of the above options")
- continue
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement