您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關python和sqlite3數據庫如何實現簡單登陸注冊功能,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
#coding=utf8 #登錄注冊功能齊了 import wx import sqlite3 class MyFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, None, -1, 'DB EXAMPLE',pos=wx.DefaultPosition,size=(300, 150)) panel = wx.Panel(self, -1) usernameLabel = wx.StaticText(panel, -1, "用戶名:")#設置用戶名Label self.usernameText = wx.TextCtrl(panel, -1, "",size=(175, -1))#設置輸入用戶名的文本框 self.usernameText.SetInsertionPoint(0) pwdLabel = wx.StaticText(panel, -1, "密碼:")#設置密碼的Label self.pwdText = wx.TextCtrl(panel, -1, "", size=(175, -1),style=wx.TE_PASSWORD)#設置密碼的文本框 loginButton=wx.Button(panel,-1,"登錄")#登錄按鈕 exitButton=wx.Button(panel,-1,"退出")#退出按鈕 registerButton=wx.Button(panel,-1,"注冊") sizer = wx.FlexGridSizer(cols=2, hgap=6, vgap=6)#sizer設置 sizer.AddMany([usernameLabel, self.usernameText, pwdLabel, self.pwdText,loginButton,exitButton,registerButton])#把它們都安在sizer里 panel.SetSizer(sizer) self.Bind(wx.EVT_BUTTON, self.OnLogIn, loginButton)#登錄按鈕綁定事件 self.Bind(wx.EVT_BUTTON, self.OnCloseWindow, exitButton)#退出按鈕綁定事件 self.Bind(wx.EVT_BUTTON, self.OnRegister, registerButton)#注冊按鈕綁定事件 # self.buildingDB()#創建數據庫和表,此語句只運行第一次,之后將其注釋掉 def OnLogIn(self,event):#登錄方法 self.username=self.usernameText.GetValue() self.password=self.pwdText.GetValue() username=str(self.username.strip()) conn=sqlite3.connect('db01') cur=conn.cursor() cur.execute("SELECT password FROM table01 WHERE username='%s'"% username) t=cur.fetchone()[0] print t if str(self.password)==str(t): print 'Password is correct!' self.Maximize(True)#窗口最大化,意思意思主界面 else: print 'failed' def OnCloseWindow(self,event):#關閉窗口 self.Close() # def loginmethod(self): # # pass def buildingDB(self):#建立數據庫 conn=sqlite3.connect("db01") cur=conn.cursor() cur.execute(""" CREATE TABLE table01(username text,password text, realname text,account text,workingdept text,phonenumber text) """) cur.execute("""INSERT INTO table01 values('zhangsan','123','zhangsan','','','')""") cur.execute("""INSERT INTO table01 values('lisi','123','zhangsan','','','')""") cur.execute("""INSERT INTO table01 values('wangwu','123','zhangsan','','','')""") conn.commit() cur.execute("""SELECT username FROM table01 WHERE username='zhangsan'""") # p=cur.fetchone() # print p cur.close() def OnRegister(self,event):#注冊方法 self.username=self.usernameText.GetValue() self.password=self.pwdText.GetValue() conn=sqlite3.connect("db01") cur=conn.cursor() cur.execute("INSERT INTO table01 VALUES('%s','%s','','','','')"%(self.username,self.password)) conn.commit() print "Registered successfully!" cur.close() if __name__ == '__main__': app = wx.PySimpleApp() frame = MyFrame() frame.Show() app.MainLoop()
關于python和sqlite3數據庫如何實現簡單登陸注冊功能就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。