Çözüldü Python ile giriş ayaryüzü yaparken hata

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Katılım
11 Ağustos 2019
Mesajlar
4.102
Makaleler
9
Çözümler
53
Merhaba arkadaşlar. Python'da giriş yapmak için arayüz yaparken, çalışıyor mu diye denerken kullanıcı adı ve parolayı doğru yazmama rağmem atadığm 'parola yanlış' error box çalışıyor. Hatada kendi atadığım kullanıcı adı ya da şifre yalnış yazıyor. Bilen arkadaşlar yardımcı olursa çok sevinirim.

1644010824449.png


Kod:
import tkinter
from tkinter import *

from tkinter import messagebox

pencere = Tk()

pencere.title("Min Konto")
pencere.geometry("600x400")


#Giris yapma buton fonksiyonu


username = 8800
password = 8800



# Center textim


center_text = Label(pencere, text= 'Logga in:')
center_text.config(font=("Arial", 30, 'bold'))
center_text.grid(padx=220, pady=10)

#Forsta text
def forsta_texten():

    Forsta_text = Label(pencere, text = 'Username:')
    Forsta_text.config(font=("Arial", 10))
    Forsta_text.grid(column=50, row=20)
    Forsta_text.place(x=170, y=77)

#Username yazi bosluk

username1 = tkinter.StringVar(pencere)
password1 = tkinter.StringVar(pencere)
username_alan = Entry(pencere, bd=8,textvariable= username1)
username_alan.grid(padx=110, pady=3)



#Password yazi bosluk

password_alan = Entry(pencere,show='*', bd=8, textvariable=password1)
password_alan.grid(padx=110, pady=3)




if username1 == username:
    print('Username dogru')
elif password1 == password:
    print('Password dogru')
#Andra text
def andra_text():
    Andra_text = Label(pencere, text = 'Password:')
    Andra_text.config(font=("Arial", 10))
    Andra_text.grid(column=50, row=20)
    Andra_text.place(x=170, y=120)



def buton_fonksiyonu():
    if (username1 == username and password1 == password):
        tkinter.messagebox.showinfo(title='Min Konto', message='Successfully logged in to the account!')

    elif (username1 != username) and (password1 != password):
        tkinter.messagebox.showerror(title= 'Min Konto', message='Användarnamnet eller lösenordet är felaktigt!')


#Buton1

def buton1 ():
    buton_forsta = tkinter.Button(text= 'Login',height=1,width=20, command= lambda: buton_fonksiyonu())
    buton_forsta.config(font= ('Arial',10, 'bold'))
    buton_forsta.place(x=200,y=175)

andra_text()
forsta_texten()
buton1()
center_text








# formu çiz


pencere.mainloop()
 
Çözüm
@Linuxginar dostum maalesef aynı şeyi username = 'sahil123' ve password = 'sahil123' en az 30 kere denedim.
Bir hata daha var, StringVar degeri almak icin .get() metodunu calistirmalisin.
Screenshot_2022-02-05_00-46-22.png

Python:
import tkinter
from tkinter import *

from tkinter import messagebox

pencere = Tk()

pencere.title("Min Konto")
pencere.geometry("600x400")


#Giris yapma buton fonksiyonu


username = "8800"
password = "8800"



# Center textim


center_text = Label(pencere, text= 'Logga in:')
center_text.config(font=("Arial", 30, 'bold'))
center_text.grid(padx=220, pady=10)

#Forsta text
def forsta_texten():

    Forsta_text = Label(pencere, text = 'Username:')
    Forsta_text.config(font=("Arial", 10))
    Forsta_text.grid(column=50, row=20)
    Forsta_text.place(x=170, y=77)

#Username yazi bosluk

username1 = tkinter.StringVar(pencere)
password1 = tkinter.StringVar(pencere)
username_alan = Entry(pencere, bd=8,textvariable= username1)
username_alan.grid(padx=110, pady=3)



#Password yazi bosluk

password_alan = Entry(pencere,show='*', bd=8, textvariable=password1)
password_alan.grid(padx=110, pady=3)



print(username1.get())
if username1.get() == username:
    print('Username dogru')
elif password1.get() == password:
    print('Password dogru')
#Andra text
def andra_text():
    Andra_text = Label(pencere, text = 'Password:')
    Andra_text.config(font=("Arial", 10))
    Andra_text.grid(column=50, row=20)
    Andra_text.place(x=170, y=120)



def buton_fonksiyonu():
    if (username1.get() == username and password1.get() == password):
        tkinter.messagebox.showinfo(title='Min Konto', message='Successfully logged in to the account!')

    elif (username1.get() != username) and (password1.get() != password):
        tkinter.messagebox.showerror(title= 'Min Konto', message='Användarnamnet eller lösenordet är felaktigt!')


#Buton1

def buton1 ():
    buton_forsta = tkinter.Button(text= 'Login',height=1,width=20, command= lambda: buton_fonksiyonu())
    buton_forsta.config(font= ('Arial',10, 'bold'))
    buton_forsta.place(x=200,y=175)

andra_text()
forsta_texten()
buton1()
center_text








# formu çiz


pencere.mainloop()

Dogru olan kod.
Estagfirullah hocam, sadece gecen sene tkinter arastiriyordum.

Çok şey biliyorsun dostum.
Ben 2 haftadır başladım, biraz daha uğraşırsam beynim hata verecek sonunda. Gece gece kafanı şişirdim senin :D. Son bir sorum var dostum.
Register yapmayı da düşünüyorum. Şifreleri ve kullanıcı isimlerini bir değişken tanımlayıp onun içinde liste olarak mı yazdırayım sence? Böyle bir düzenek kurarak register döngüsünü yaratabilir miyim sence?
 
Çok şey biliyorsun dostum.
Ben 2 haftadır başladım, biraz daha uğraşırsam beynim hata verecek sonunda. Gece gece kafanı şişirdim senin :D. Son bir sorum var dostum.
Register yapmayı da düşünüyorum. Şifreleri ve kullanıcı isimlerini bir değişken tanımlayıp onun içinde liste olarak mı yazdırayım sence? Böyle bir düzenek kurarak register döngüsünü yaratabilir miyim sence?
Olabilir, hatta baslamisken Sqlite ogrenin hocam yararli olur. Bir db dosyasi icinde veritabani olarak tutun. SQLite da ogrenmis olursunuz. Ama tek seferlik kullanim icin register islemi yapacaksaniz olabilir liste olarak da.
 
Olabilir, hatta baslamisken SQLite ogrenin hocam yararli olur. Bir dB dosyasi icinde veri tabanı olarak tutun. SQLite da ogrenmis olursunuz. Ama tek seferlik kullanim icin register islemi yapacaksaniz olabilir liste olarak da.

Yarın sabah araştıracağım SQLite. Hey şey için çok teşekkür ederim dostum :D. Iyi geceler.
 

Technopat Haberler

Geri
Yukarı