91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

pymysql實現用戶登錄驗證的代碼怎么寫

發布時間:2022-01-21 09:19:47 來源:億速云 閱讀:336 作者:iii 欄目:開發技術

這篇文章主要介紹了pymysql實現用戶登錄驗證的代碼怎么寫的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇pymysql實現用戶登錄驗證的代碼怎么寫文章都會有所收獲,下面我們一起來看看吧。

思考過程

在此之前,我一直糾結一個問題。用戶名是唯一的,而密碼卻是重復的,一條SQL語句,如何在fetchonefetchall之間進行抉擇。于是,腦子就剪不斷,理還亂了,整個都纏繞在一起。在冷靜思考之后,發現了問題,為什么程序中SQL語句只能是一條?兩個內容不能拆分開嗎?

于是,靈光一現。首先使用一條SQL語句,搜索數據表中username字段是,因為用戶名是唯一的,搜索的結果集用fetchone。判斷結果集是否為空,不為空就就可以判斷密碼是否一致,一致就成功登錄,不一致就是密碼錯誤。如果結果集為空,則進行下一條SQL語句的執行。

這一條SQL語句搜索數據表中password字段和密碼一樣的全部信息,這時候使用fetchall獲取所有內容,返回結果是一個列表。如果列表為空,就是用戶名和密碼都不正確;如果列表不為空,那么就是用戶名輸入錯誤了。

進行一番測試驗證后,效果還不錯!下面是具體的代碼內容。

具體代碼

import pymysql# 創建數據庫連接conn = pymysql.connect(
    host='localhost',
    user='root',
    password='123456',
    database='db_game')# 獲取用戶輸入的用戶名和密碼username = input("請輸入用戶名:")
password = input("請輸入密碼:")# 創建游標cursor = conn.cursor(pymysql.cursors.DictCursor)# 查詢數據庫中與用戶輸入的用戶名相同的信息sql = '''SELECT * FROM tbl_user WHERE username=%s'''# 執行sql語言cursor.execute(sql,username)# 因為用戶名是唯一的,所以使用fetchone獲取a = cursor.fetchone()# 如果獲取的結果集為空if a is None:## 查詢數據庫中所有和用戶輸入的密碼相同的全部信息sql = '''SELECT * FROM tbl_user WHERE password=%s'''cursor.execute(sql, [password])## 密碼是可重復的,所以使用了fetchalll = cursor.fetchall()## 判斷如果獲取的結果集列表是空列表,則表示沒有這個用戶。if l == []:
        print("用戶名和密碼輸入錯誤!")## 否則就是用戶名輸錯了。else:
        print("用戶名輸入錯誤!")# 獲取的結果集不為空else:## 判斷結果集中password字段的值是否與輸入的密碼相同。如果一致,成功登錄if a['password'] == password:
        print('成功登錄!')## 否則就是密碼輸入錯誤else:
        print('密碼輸入錯誤!')
cursor.close()
conn.close()

關于“pymysql實現用戶登錄驗證的代碼怎么寫”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“pymysql實現用戶登錄驗證的代碼怎么寫”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

崇礼县| 镇坪县| 台州市| 凭祥市| 绥棱县| 松滋市| 宁陕县| 灵寿县| 松江区| 淳化县| 抚顺县| 安庆市| 淮北市| 霍邱县| 台州市| 常州市| 中阳县| 滦南县| 巴楚县| 类乌齐县| 乐至县| 渭南市| 苍梧县| 如东县| 云浮市| 翼城县| 长乐市| 托里县| 临沭县| 潜江市| 玛曲县| 公安县| 会泽县| 阜城县| 兴城市| 开化县| 松原市| 景德镇市| 龙里县| 天峻县| 沙田区|