Untitled

 avatar
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