Ich programmierte eine Python-Datei, die Sie registrieren können (Name, Passwort, EMail (mit Bestätigungs-EMail an Sie mit einem Code gesendet)) und nachdem Sie sind Registriert Ihre Daten werden jetzt in einer separaten Textdatei gespeichert Ich möchte, dass Python überprüft, ob Sie Ihren Benutzernamen eingeben, ob der Benutzername bereits existiert oder nicht.Überprüfen Sie separate Textdatei, ob Benutzername bereits existiert oder nicht (Python Registrierungsprogramm)
Es gibt diese names.txt Datei und es ist nur 1Line: Benutzername 2Line: Passwort 3Line: E-Mail-Adresse wenn Sie einen neuen hier registrieren Code eingeben unt es das gleiche unter dem ersten Konto in der txt zeigen Datei. Aber ich möchte, dass Python diese Textdatei jetzt während Ihrer Registrierung überprüft, ob Sie diesen Benutzernamen verwenden können, weil er noch nicht benutzt wurde, oder wenn der Benutzername bereits existiert und Sie einen anderen benutzen müssen.
import smtplib
import random
random.seed()
registrated=False
print("")
print("Namen Kriterien:")
print("-Mindestens 1 Buchstabe")
print("-Mindestens 4 Zeichen lang, maximal 20!")
print("-'Thats it!'")
print("")
fehler=1
while fehler==1:
try:
print("")
name=input("Geben Sie Ihren Nutzernamen ein (4-20 Zeichen): ")
if len(name) > 20 or len(name) < 4:
print("Dein Name entspricht nicht den Kriterien!")
else:
print("")
print("Dein Name ist:",name)
print("")
fehler2=1
while fehler2==1:
try:
q1=input("Ist das richtig? (YES | NO): ")
q1.upper()
if q1=="YES":
print("")
fehler2=0
fehler=0
elif q1=="NO":
print("")
fehler2=0
else:
print("")
print("ERROR")
print("")
fehler2=1
except:
print("")
print("ERROR")
print("")
fehler2=1
except:
print("Versuche es nochmal!")
fehler=1
print("Herzlichen Glückwunsch, dein Name ist",name)
fehler1=1
while fehler1==1:
try:
print("")
pw=input("Bitte gib dein Passwort ein (selbe Kriterien wie der Name): ")
if len(pw) > 20 or len(name) < 4:
print("Das Passwort entsprcht nicht den Kriterien!")
else:
pw1=input("Bitte bestätige dein Passwort: ")
if pw1==pw:
fehler1=0
else:
print("")
print("DEIN PASSWORT WAR FALSCH, BITTE WIEDERHOLEN!")
print("")
fehler1=1
except:
print("Versuche es nochmal!")
fehler1=1
#Mail
import smtplib
import random
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
random.seed()
while 1:
print("")
email=input("Please enter your email adress: ")
email1=input("Please confirm your email adress: ")
if email == email1:
break
else:
print("Something went wrongt, try again!")
email_user='[email protected]'
email_pw='mnstudiophytonnht1102'
code=random.randint(10000,99999)
body='Hi there, thanks for using mnstudio programs, your code is: '+str(code)
subject='Registration to Mnstudio!'
msg = MIMEMultipart()
msg['From'] = email_user
msg['To'] = email
msg['subject'] = subject
msg.attach(MIMEText(body,'plain'))
text = msg.as_string()
server= smtplib.SMTP('smtp.gmail.com',587)
server.starttls()
server.login(email_user,email_pw)
fh=1
fhh=1
while fh==1:
try:
server.sendmail(email_user,email,text)
print("")
print("DONE EMAIL SENT")
print("")
print("We sent you an email with the confirmation code, please check spam as well if you cant find it!")
print("")
fh=0
except:
fhh=1
print("")
print("SOMETHING WENT WRONG WE'LL TRY AGAIN")
print("")
while fhh==1:
try:
print(email)
q=input("Is the email correct? (YES | NO): ")
print("")
q.upper()
if q=="YES":
fhh=0
fh=1
elif q=="NO":
fhh=1
email=input("Please enter your email again: ")
email1=input("Please confirm email: ")
if email==email1:
print("")
print("Thanks we'll try to send an email to,",email)
print("")
fhh=0
fh=1
else:
print("ERROR TRY AGAIN")
fhh=1
fh=1
else:
fhh=1
print("ANSWER WITH (YES | NO)")
except:
print("ANSWER WITH (YES | NO)")
fh=1
server.quit()
while True:
codeconfirm=int(input("Bitte geben Sie den Code ein: "))
print("")
if codeconfirm==code:
registrated=True
print("CODE CORRECT")
print("")
break
else:
print("Code war falsch bitte noch einmal eingeben !")
#
if registrated:
dateihandler = open('names.txt', mode='a')
dateihandler.write("\n"+str(name))
dateihandler.write("\n"+str(pw))
dateihandler.write("\n"+str(email))
dateihandler.write("\n")
print("Danke du bist jetzt registriert! ")
input("")
Sie sollten eine Datenbank verwenden, keine Textdatei. –
Laden Sie Ihren Code hoch, damit wir sehen können, was funktioniert und was nicht. –
@ cᴏʟᴅsᴘᴇᴇᴅ ist richtig, Sie sollten eine Datenbank verwenden und einige Technik als Index oder Primärschlüssel verwenden. Es wird Ihr Projekt verbessern. –