登录系统(无GUI)输出错误



我正在尝试制作一个非图形登录系统。

我期望Register()从用户获取用户名和密码,然后从中打开存储当前数据的文件,并查看用户名是否已经存在。从这个它要么创建帐户和存储信息,如果它采取它使他们重新放入一个新的用户名。如果我输入一个已经存在的名称,它仍然会创建帐户并存储信息。我能做什么?

可能是一个简单的修复与许多坏代码,但我已经学习了不到2周!下面是代码:

def start():
global option
option =  input('Welcome to Skies site!nLogin or register?: ')
if (option != 'login' and option != 'register'):
print('Invalid input, try again.')
start()
elif option == 'login':
Login()
elif option == 'register':
Register()
def Login(username, password):
success = False # Set false so login isnt set to true at start
file = open('user_details.txt','r') #R is read mode it will read the file
for i in file:
a,b = i.split(',') #Split on bases of comma to get the name and password
b = b.strip() #Removes new line character (new empty line)
if (a==username and b==password):
success = True
break
file.close()
if success == True:
print('Login Successful!')
else:
print('Wrong username or password. Try again.')
def Register():
global username
username = input('Enter username: ')
password = input('Enter password: ')
with open('user_details.txt','a+') as file:
if username in file.readlines():
print('Username taken. Try another')
Register()
else:
print('Username available!')
file.write('n'+username+' , '+password)
print('Credentials Saved!')
print('--> Log in now <--')
Login(username, password)
def user_info(username, password, verify):
print('>>>>>>>>>>>>>>>>')
print('Account is: ACTIVE')
print('Username: '+username)
start()```
Thanks for in advance!

试试这个

def Register():
global username
username = input('Enter username: ')
password = input('Enter password: ')
with open('user_details.txt','r+') as file:
if str(username) in str(file.readlines()):
print('Username taken. Try another')
Register()
else:
print('Username available!')
file.write(username+' , '+password+'n')
print('Credentials Saved!')
print('--> Log in now <--')
Login(username, password)

必须使用SQL数据库而不是文本文件保存信息!!

global username
username = input('Enter username: ')
password = input('Enter password: ')
with open('user_details.txt','r+') as file:
if str(username) in str(file.readlines()):
print('Username taken. Try another')
Register()
else:
print('Username available!')
file.write(username+' , '+password+'n')
print('Credentials Saved!')
print('--> Log in now <--')
Login(username, password)```

最新更新