Sqlite3 Entry hakkında

Merhaba ben yazdığım programda sqlite ile kayıt olmasını istiyorum.Programın mantığı basit kullanıcı adı soyadı şehiri ve epostayı belirliyor.tkinter olmadan yapınca sorun yok ancak tkinterın entry komutu ile yapınca sorun oluyor ve kayıt olmuyor sanırım ben bir yeri yanlış yapıyorum kodlar aşağıda

import tkinter as tk
import sqlite3
form=tk.Tk()
yazı=tk.Entry(form,text="girivier")

isim=tk.Entry(form,text="isim").pack()
soyisim=tk.Entry(form,text="soyisim").pack()
şehir=tk.Entry(form,text="şehir").pack()
eposta=tk.Entry(form,text="eposta").pack()


import sqlite3
vt=sqlite3.connect("selam")
im=vt.cursor()
im.execute("""CREATE TABLE IF NOT EXISTS
personel (isim, soyisim, sehir, eposta)""")

yazıcık=("""INSERT INTO personel VALUES""",(isim,soyisim,şehir,eposta))
vt.close()

form.mainloop()

Merhaba.

pack metotlarını widgetleri oluşturup değişkenlere atadığınız satırda çağırmayın, şuanda isim değişkeni bu pack metodundan dönen değer yani None oluyor.

Entry’leri bu şekilde kullanamazsınız, entry’nin içindeki yazıyı almak için Entry.get metodu kullanılıyor. Ayrıca kayıt işlemini bir butona basılması gibi bir olaydan sonra yapmanız lazım yoksa entrylerde hiçbir şey yazmıyorken kayıt işlemi yapılır.

yazıcık query’sini execute etmiyorsunuz.

Her birini bir alt satırda çalıştırmam mı gerekiyor yani bir alt satıra

isim.pack()

bu şekilde

Ben daha dün okumuştum bunu unutmuşum hemen deniyorum

Hemen altında olması gerekmiyor ama daha sonra çalıştırman lazım.

Örnek verme şansınız var mı?Tam olarak anlamadım nasıl bir düğmeye ekleyebilirm?

tkinter.Button kullanmayı biliyor musunuz?

Anladım ben tüm satırları aynı şekilde yapmıştım onlar soun yaratabilirmi?Başka konularda bu benim deneme sayfam normalde 200 satıra yakın kod var (tabii bu daha başlangıç programı baya geliştirmeye çalışıyorum)sonradan problem yaratma ihtimali var mı

Evet biliyorum ortalama bir bilgiye sahibim tkinter da

Evet yaratır, çünkü o değişkenler bir Entry değil None oluyorlar.

O zaman nesini anlamadınız dediğimin, command olarak kayıt işlemini yapacak bir fonksiyon verirsiniz.

1 Beğeni

Peki deniyorum teşekkürler

Bir örnek veriyim:

from tkinter import *

root = Tk()

def kayıt_yap():
    girdi = entry.get()
    print("Kayıt yapılıyor:", repr(girdi))

entry = Entry()
buton = Button(text = "Kaydet", command = kayıt_yap)

entry.pack()
buton.pack()

root.mainloop()
1 Beğeni