Videóleckék

Specifikáció és az alkalmazás bemutatása

Az alkalmazás, amin a fejlesztés menetét bemutatjuk a korábbi fejezetekben látott Fórum lesz. Az adatbázis tervezésén már túlvagyunk, hiszen ezekre láttunk példát a korábbi fejezetekben.

A tervezés során a modell-nézet-vezérlő (angolul Model-View-Controller, MVC) tervezési mintát használjuk. Az MVC tervezési minta szerint elkülönítjük az adatokat kezelő egységeket (=modell), a (grafikus) felhasználó felülethez kapcsolódó egységeket (=nézet), és az őket összekötő, és közöttük adatokat továbbító (=vezérlő) egységeket.

A Fórum alkalmazásba a felhasználó regisztrálhatják magukat. A regisztrált felhasználók bejelentkezve üzeneteket írhatnak, illetve kiválaszhatják, hogy mely hírfolyamokat követik, A fórum üzeneteit mindenki, a látogató, nem regisztrált felhasználók is olvashatják, de ők nem tudnak üzenetet írni, amíg be nem lépnek a rendszerbe.

A Fórum alkalmazás bemutatása

Sütik és munkamenetek

A sütik- és munkamenetek kezelését illetően jelen tananyagon belül csak részlegesen foglalkozunk, ugyanis ez a témakör inkább a rendszerfejlesztés valamint a webes alapú alkalmazásfejlesztés témaköréhez kapcsolódik szorosabban, de szemléletformáló szándékkal fontosnak tartjuk az itt leírtakat. Az Olvasó ebben az alfejezetben azt tanulhatja meg, hogy adatbázisokkal hogyan támogathatja a munkamenetek és sütik kezelését. Azzal, hogy az Olvasó nem csupán az alkalmazás szintjén kezeli a munkameneteket, fontos előrelépést tesz az általa fejlesztett adatbázisok és adatok biztonsága érdekében. A munkamenetek (sessions) kezelése elengedhetetlenül fontos a mai webes alkalmazásfejlesztésben. A legtöbb webes alkalmazásfejlesztésre használt nyelv, – mint például a PHP is – támogatja a munkamenetek kezelését. A munkamenet kezelés lényege, hogy a felhasználó a weboldalon végzett tevékenységeit munkamenetként tartjuk nyilván.  A munkameneteket létrehozhatjuk akkor, amikor a felhasználó meglátogatja az oldalt, vagy amikor belép egy webes felületű rendszerbe. A lépéseit, adatait munkamemenet változókban a webszerver tárolja. A munkamenet-változókban tárolt adatokat használhatjuk arra, hogy navigáljuk ot az oldalon, tegyünk elérhetővé számára új űrlapokat, felületeket. A munkamenetek létrehozásakor a rendszer minden munkamenethez egy új munkamenet azonosítót rendel, amelyet a szerveren tárol. A munkamenet során az alkalmazás eltárolhat bizonyos információkat ehhez a munkamenet-azonosítóhoz, például, hogy milyen oldalon állunk éppen, és ezen információ alapján felkínálhat a rendszer olyan lehetőségeket, hogy milyen oldalakra mehetünk tovább.

A sütik (cookies) is hasonló szerepet játszanak a webes alkalmazásokban, de nem a szerveren, hanem a kliensen tárolják az adatokat. Funkcióikat tekintve hasonlóan használhatóak az adatok tárolására, mint a munkamenetek.

Hogyan jutnak szerephez az adatbázisok a munkamenetek és a sütik kezelésében? Léteznek olyan hálózaton keresztüli támadások, amelyek a munkamenetek vagy sütik megszerzésére irányulnak, így a támadó a megszerzett munkamenet azonosítóval a vásárló vagy felhasználó „nevében” tud bizonyos műveleteket végrehajtani. Az adatbázisokkal úgy támogathatjuk a rendszer biztonságát, hogy a felhasználókhoz eltároljuk a munkamenetek azonosítóit és minden egyes alkalommal, amikor új oldalra lép ellenőrizzük, hogy az érvényben lévő munkamenet-azonosító megegyezik-e az adatbázisban eltárolt munkamenet-azonosítóval. Ezt a módszert sütik esetében is alkalmazhatjuk.

Regisztráció és bejelentkezés a Fórum alkalmazásba

Az alábbi videóleckében azt mutatjuk be, hogy hogyan tudunk új felhasználót regisztrálni a Fórum alkalmazásba, valamint hogyan kezeljük a bejelentkezéseket.

Bejelentkezés és regisztráció a Fórum alkalmazásba

Üzenetek írása és listázása a Fórum alkalmazásban

Az alábbi videóleckében azt mutatjuk meg, hogyan tudunk új üzeneteket írni a Fórum alkalmazásban, valamint hogyan tudjuk ezeket kilistázni.

Üzenetek írása és listázása a Fórum alkalmazásban

Forráskódok

A fenti példához tartozó forráskódokat az Olvasó innen töltheti le. Megjegyezzük, hogy ez egy egyszerűsített példa, éles alkalmazásokhoz alaposabb adatellenőrzés szükséges, amely kiváló lehetőséget biztosít az Olvasó szakmai fejlődéséhez.

Licensed under the Creative Commons Attribution Share Alike License 4.0