3. týždeň / 1. semester

  • Dátum
    • 14.10.2024, 08:00
  • Umiestnenie:
    • Slovenská Technická Univerzita v Bratislave, Fakulta Elektrotechniky a Informatiky
  • Miestnosť:
    • C614 (C Blok, 6. poschodie)
  • Účastníci:
    • Bc. Bence Both
    • Bc. Matyas Horvath
    • Bc. Jozef Nyitrai
    • Bc. Aron Tükör
    • Bc. Vincent Pálfy
  • Vedúci:
    • Ing. Stanislav Marochok

Bod programu č. 1: Diskusia o návrhu a implementácii webovej aplikácie pre spracovanie dokumentov

Počas konzultácií sme diskutovali o realizácii nového projektu, zameraného na vytvorenie webovej aplikácie pre registráciu a prácu s dokumentmi. V rámci analýzy sme sa sústredili na implementáciu aplikácie, ktorá bude slúžiť na dve hlavné funkcie:

  • Nahrávanie a spracovanie dokumentov obsahujúcich kľúče
  • Viacstupňové dešifrovanie šifrovaných dokumentov

Používatelia, ktorí sa prihlásia do aplikácie, budú môcť tieto úkony kedykoľvek prerušiť a pokračovať v nich neskôr po opätovnom prihlásení.

Je dôležité zdôrazniť, že v rámci nášho projektu sa nezameriavame na vývoj samotných spracovateľských modulov, ale na vytvorenie webovej aplikácie, ktorá poskytne priestor pre ich budúcu integráciu. Implementácia týchto modulov do systému by mala byť čo najjednoduchšia a čo najviac priamočiara.

Čo sa týka technológie, front-end webovej aplikácie budeme riešiť pomocou HTML, CSS a JavaScriptu, pričom plánujeme využiť aj frameworky ako Bootstrap pre rýchlejšiu a efektívnejšiu tvorbu rozhrania. Pre back-end sme sa rozhodli využiť PHP. Zároveň sme sa zhodli, že samotné moduly strojového spracovania môžu byť implementované aj v inom jazyku než PHP, pričom naša úloha bude vytvoriť priestor pre ich integráciu. Tento projekt nám poskytuje skvelú príležitosť vytvoriť flexibilnú a škálovateľnú aplikáciu, ktorá umožní ďalšie rozširovanie funkcionality jednoduchou a efektívnou cestou.

Bod programu č. 2: Implementácia registračného a prihlasovacieho procesu vo webovej aplikácii

Po ukončení analýzy sme sa tento týždeň zamerali na samotnú implementáciu. V rámci tejto fázy sme vytvorili hlavnú stránku webovej aplikácie, registračný formulár a prihlasovací formulár. Na testovanie sme použili XAMPP, ktorý nám na localhoste poskytol kompletný LAMP server s databázou MariaDB, správcom databáz PHPMyAdmin, a technológiami ako PHP, Perl a Apache webový server. To znamená, že máme všetky potrebné nástroje na vývoj a testovanie kódu.

Prvým krokom bolo vytvorenie databázy pre náš projekt. V rámci databázy sme pomocou SQL príkazov vytvorili tabuľku s názvom users (používatelia), ktorá bude uchovávať údaje o registrovaných používateľoch. Každý používateľ má v tejto tabuľke atribúty ako ID, používateľské meno, e-mail a heslo. Identifikátory, používateľské mená aj e-maily musia byť v systéme jedinečné, aby sa predišlo duplikáciám. SQL príkaz pre vytvorenie tabuľku vyzerá nasledovne:

CREATE TABLE users
(
    id         INT AUTO_INCREMENT PRIMARY KEY,
    username   VARCHAR(255) NOT NULL UNIQUE,
    email      VARCHAR(255) NOT NULL UNIQUE,
    password   VARCHAR(255) NOT NULL
);

Počas registrácie si používateľ vyberá svoje používateľské meno a zadáva e-mail a heslo. Heslo je z bezpečnostných dôvodov vyžadované dvakrát, aby sa predišlo preklepom a systém overil, že používateľ zadáva správne údaje. Dôležité je, že heslá sú uložené v databáze šifrované, aby sa zabezpečila ochrana údajov.

Po úspešnej registrácii sa používateľ môže prihlásiť pomocou prihlasovacieho formulára. Ak sa pri registrácii alebo prihlasovaní vyskytne chyba, napríklad nesprávne heslo, použitie už existujúceho používateľského mena, alebo nesprávny formát údajov, systém upozorní používateľa prostredníctvom chybových hlásení z knižnice TOAST. Po úspešnom prihlásení je používateľ automaticky presmerovaný na stránku určenú iba pre overených používateľov. Neoverení používatelia nemajú k tejto stránke prístup, čo zaisťuje bezpečnosť aplikácie.

Hlavná podstránka

Hlavná podstránka

Podstránka pre registrácie

Podstránka pre prihlásenie

Prihlásenie

Na dizajn a responzívnosť webovej stránky sme využili frameworky a knižnice ako jQuery a Bootstrap, ktoré zabezpečili moderné a používateľsky prívetivé rozhranie. Týmto spôsobom sme úspešne implementovali základný proces registrácie a prihlásenia do našej webovej aplikácie.

Môže sa Vám ešte páčiť...