A számítástechnikában és a távközlésben a munkamenet egy meghatározott időszak, amely alatt a számítástechnikai eszköz kommunikáció alatt áll, és az ügyfelek - egy felhasználó, egy szoftver vagy más eszköz - szolgáltatásait hajtja végre .
A munkamenet akkor kezdődik, amikor a felhasználó interakcióba kezd egy szoftverrel, legyen szó operációs rendszerről (OS), nehéz alkalmazásról vagy webhelyről .
Ezért több munkamenet „beágyazható” egymásba, egy weboldalon megnyitott munkamenet maga az operációs rendszer alatt nyitott munkamenet.
A bejelentkezés lehet:
Logikus, hogy a munkamenetnek akkor kell véget érnie, amikor a felhasználó abbahagyja a rendszer használatát. A gyakorlatban még akkor is, ha a rendszernek van kifejezett munkamenet-leállítási mechanizmusa (például lekapcsolás), a felhasználó továbbra is nyitva hagyhatja a programot a munkamenet alatt, hogy később visszatérhessen. Ez nem mentes a problémáktól, különösen a biztonság szempontjából. Ezután a programtervező inaktivitási időkorlátot vagy határidőt szabhat ki: egy bizonyos idő elteltével vagy a munkamenet megszűnik, vagy a jelszó újbóli megadását igényli.
A munkamenet adatait a felhasználó profilja tárolja (általában változók halmaza ). Lehetnek röpke vagy közepes / hosszú távon tárolható fájlok , adatbázis- bejegyzések stb. Vagy betöltődnek a munkamenet nyitásakor, és a végén frissülnek, vagy dinamikusan az interakciók során.
Bizonyos érzékeny munkamenet-információkat el kell különíteni és / vagy hozzáférési jogokkal kell védeni , míg másokat több profil is megoszthat.
A számítógép gyakran használja a munkamenet fogalmát:
A következő szakaszok a munkamenet-kezelés konkrét eseteit mutatják be, hogy áttekintést adhassanak a lehetséges felhasználásokról. Tudva, hogy a munkamenetek problémáját manapság a hálózatokon kínált alkalmazások és különösen a böngészőkön keresztül haladó webalkalmazások dominálják, a példák ezért a webhelyek vagy webalkalmazások létrehozására szánt nyelvekhez kapcsolódnak.
A munkamenetek elengedhetetlenek, amint egy webhely rendelkezik "tagok" résszel. Lehetővé teszik, hogy a szerver memóriájában minden olyan személy megtalálható legyen, aki azonosítja vagy sem, aki felkeresi a webhelyet. A munkamenetfüggvényeket mindig meg kell hívni a HTML- kód írása előtt . Tehát az első ajánlott dolog minden PHP oldalon : session_start ();.
A munkamenetváltozókat szuperglobális változóknak nevezzük, mert mindig ott vannak, még akkor is, ha az oldalt a szerver tölti be. A munkamenetek élettartama a szerver által meghatározott. Ez az idő általában 5 és 30 perc között változik, de továbbra is átlagos.
A munkamenet változókat egy egyszerű PHP tömbben tároljuk $_SESSION[].
Így állíthatja be a munkamenet változóját:
$_SESSION['id'] = $variable;A munkamenet-változókat a következőképpen állítjuk helyre:
$variable = $_SESSION['id'];Itt van egy biztonságos módszer a munkamenet megsemmisítésére lekapcsolás esetén (manuális vagy kényszerített):
$_SESSION = array(); //Écrase les variables de sessions en recréant un tableau vide session_destroy(); //Supprime le fichier serveur de la sessionA szerverre mentett munkameneti fájlok formátuma a következő:
> Nom du fichier > sess_fe089db4fa4f15978286da2432db9ab3 > Contenu > id|i:1;name|s:6:"Didjor";Vizsgáljuk meg közelebbről, mi határozza meg a munkamenet változót:
> Name|Type:Char_nb:Value; Name Szuperglobális változó neve Type Adattípus. i egész számot és s karakterláncot jelent Char_nb Karakterek száma a változóban Value A változó értéke. Idézőjelben szerepel, ha típusa String