1.、データベースを接続してユーザー情報を取得し、ユーザーは、ログインの存在が存在するかどうかを判断し、ユーザ名、パスワード
2.各ログインは一度失敗し、エラーの+1数は、エラーの数が5以上で、ユーザーが凍結することを求めるメッセージが表示されます
輸入pymysql、hashlib、日時 今日 = datetime.datetime.today() デフop_mysql(SQL): db_info = { ' ユーザ':' XXX '、' パスワード':' XXXXXX ' 、 ' ホスト':' 127.0.0.1 '、' DB ':' XXX '、' ポート':3306、' 文字セット':' UTF8 ' 、 ' 自動コミット' :真} CONN = pymysql.connect(** db_info) #接続を確立 CUR = conn.cursor(pymysql.cursors.DictCursor) #のカーソル cur.execute(SQL) #実行SQL文、INSERT、UPDATE、DELETE の検索結果を= cur.fetchall() cur.close() conn.close() リターン結果 用 I 中の範囲(3 ): ユーザ名 = INPUT(' ユーザー名を入力してください。' ).strip() パスワード = INPUT(' パスワードを入力します。' ).strip() HA_PWD = hashlib.md5(password.encode()) md5_pwd = ha_pwd.hexdigest() SQL1 = ' SELECT * WHEREユーザーからユーザー名= "%S"; '%(ユーザー名) IF名== '' またはパスワード== '' : 印刷(' ユーザー名またはパスワードが空白でない' ) のelif ないop_mysql(SQL1 ): 印刷(' アカウントが存在しない' ) ELIFのop_mysql(SQL1): IF op_mysql(SQL1)[0]に.get(' ERROR_COUNT ')<5。 : IF md5_pwd == op_mysql(SQL1)[0]に.get('パスワード' ): 印刷(' %sのログインへようこそ、今日の日付は%をs "%)(ユーザー名、今日は) BREAK 他: NEW_COUNT = op_mysql(SQL1)[0]に.get(' ERROR_COUNT ')+1 SQL3 = ' 更新ユーザ設定ERROR_COUNT = "%s"の名= "%sの"; 「%(NEW_COUNT、ユーザ名) op_mysql(SQL3) 印刷(「間違ったパスワード」) それ以外: 印刷(「ユーザーが凍結されている」) それ以外: 印刷(「3回以上のログイン失敗回数は、ログインすることはできません」)