Untitled
unknown
plain_text
a year ago
1.7 kB
5
Indexable
import sqlite3 # Povezivanje na bazu podataka conn = sqlite3.connect('bank.db') cursor = conn.cursor() # Kreiranje tabele Klijenti cursor.execute(''' CREATE TABLE IF NOT EXISTS Klijenti ( id INTEGER PRIMARY KEY, ime_prezime TEXT, broj_racuna TEXT, sifra TEXT, token TEXT ) ''') # Umetanje tri proizvoljna korisnika users = [ (1, 'Petar Petrovic', '1234567890', 'password1', ''), (2, 'Ana Anic', '0987654321', 'password2', ''), (3, 'Jovan Jovanovic', '1122334455', 'password3', '') ] cursor.executemany('INSERT OR IGNORE INTO Klijenti VALUES (?, ?, ?, ?, ?)', users) conn.commit() conn.close() import sqlite3 import jwt from datetime import datetime, timedelta # Tajni ključ za generisanje tokena secret_key = 'tajni_kljuc' # Funkcija za kreiranje tokena def create_token(username): return jwt.encode({'username': username, 'exp': datetime.utcnow() + timedelta(seconds=45)}, secret_key, algorithm='HS256') # Povezivanje na bazu podataka conn = sqlite3.connect('bank.db') cursor = conn.cursor() # Unos broja računa i šifre broj_racuna = input("Unesite broj računa: ") sifra = input("Unesite šifru: ") # Provera da li klijent postoji u bazi cursor.execute('SELECT * FROM Klijenti WHERE broj_racuna=? AND sifra=?', (broj_racuna, sifra)) klijent = cursor.fetchone() if klijent: # Generisanje tokena token = create_token(klijent[1]) # Ažuriranje tokena u bazi cursor.execute('UPDATE Klijenti SET token=? WHERE id=?', (token, klijent[0])) conn.commit() print(f"Uspešan pristup. Vaš token je: {token}") else: print("Greška: Neispravan broj računa ili šifra.") conn.close()
Editor is loading...
Leave a Comment