[Powered by Google Translate] [PHP Sessions] [Tommy MacWilliam, Harvardeko Unibertsitateko] [Hau CS50.] [CS50.TV] PHP saioak funtzionalitate ezartzeko erabili ahal izango da, Erabiltzaileak sarrerak bezala, zure web app. PHP saioak informazio lotzeko aukera emango erabiltzailearen osoan nabigazio saioarekin besterik gabe, orri bakar bat baino hobeto esanda. Beraz, horrek esan nahi du lankidea PHP hainbat zure web osatzen duten orriak bisitatzen gisa, saioan edozein informazio diraute egingo. Beraz, horrek esan nahi du, saioaren gordetzen by orri bat datuak daiteke beste orri batean egindako geroago sartzen da. Informazioa gordetzeko saio batean erraza da, eta horrela egin dugu dolarraren ikurra bidez, azpimarra, capital SAIOA aldakorra. Dolarraren ikurra, azpimarra, SAIOA-besterik dolarraren ikurra bezala, azpimarra, GET eta dolarraren ikurra, azpimarra, POST- elkartze-array bat gako bikoteak osatua da. Beraz, sintaxi-bezala dolarraren ikurra erabili ahal izango dugu, azpimarra, SAIOA, parentesia, aurrekontua, foo, aurrekontua, parentesi, berdin, aurrekontua, taberna, aurrekontu- balio "bar" gordetzeko gako in "foo". Hala ere, dugu idatzi edo saio array irakurri ahal izan aurretik, funtzio-berezi bat deitu beharko dugu saioan, azpimarra, hasteko, () - eta hau saio abiarazi egingo. Beraz, dezagun adibide bat begirada bat. Gure lehen orria, hello.php, saioaren datu batzuk erabiltzen irteera erabiltzaileari. Gogoratu, session_start erabili behar dugu dugun edozein saio datuak sartu ahal izateko. Orain PHP en isset erabiltzen ari gara gako bat existitzen bada zehazteko the $ _saioa elkartze-array. Giltza hori existitzen bada, horrek esan nahi du erabiltzaileak ditu erregistratuta, beraz, erabiltzailearen izena erakutsi dugu. Bada gakoa ez dago ezarrita, horrek esan nahi du erabiltzaileak ez du oraindik erregistratuta, beraz login.php lotura bat erakutsi dugu. Beraz, dezagun login.php begirada bat. Behera hemen, HTML inprimaki bat bakarra sarrera bakar batekin izan gara. Inprimakia ekintza atributu $ _Zerbitzaria ['PHP_SELF'] da, eta hau, besterik gabe, esan nahi formulariora uneko fitxategia meneratuak izan nahi dugu, izan ere, kasu honetan, login.php da. Beraz, goazen fitxategia honen hasierara itzuli. Erabiltzaileak inprimakia aurkeztu bada, ondoren $ Bi_dali ['izena'] ezarri behar da. HTML inprimakiak eta post buruzko informazio gehiago lortzeko, check out PHP Web garapena bideoa. Kasuan erabiltzaileari egin inprimakia aurkeztu zen, horretan idatzitako saioan sartu dute balioa idatzi nahi genuke. Orain erabiltzaileari hello.php birbideratu ahal izango dugu. Erabiltzailearen sarrera gordetako dugu saioan sartu delako, zela login.php girotutako balioa sartzeko gai izango hello.php. Hargatik begiratu hau web nabigatzaile batean. Lehenengoa, http://localhost/hello.php dugu nabigatzeko. Hemen ikus dezakegu dugu ez duten in oraindik erregistratuta, beraz, utzi egin klik saioa hasteko link, gurekin birbideratuko nahi login.php. Ados, idatzi dut nire izena, eta bertan egingo saioaren gordeta. Handia! Orain nire sarrera login.php hello.php aurrera ikusi ahal izango dugu saioaren bidez. Beraz, zer erabiltzaileari logging out buruz? Beno, ahal izateko, erabiltzaileak urtean hasi ahal izateko, saioaren izena sartu balio bat gordetako besterik ez dugu. Beraz, erabiltzaileak hasi nahi, besterik gabe, izen giltza hori kendu behar dugu saioaren array-tik. Beraz, dezagun azken fitxategi hau begirada bat, logout.php. Berriro ere, session_start deitu (behar dugu) dugu ezer saioan zerikusia egin aurretik. Orain dugu besterik gabe, ahal izango session_destroy deitu (), horrek zaindu egingo ohitu saioan datu guztiak deusezten eta ondoren birbideratu erabiltzaileari hello.php itzuli. Beraz, klikatu dut hasi out esteka on bada, zerbitzaria ahaztu nor naizen ikusi ahal izango dugu, eta jada ez naiz oraindik sartu Beraz, zer gertatzen da hemen kanpaia azpian? Ordena portaera ikusi besterik ez dugu lortu ahal izateko, gure zerbitzariak 2 gauza egin behar da. Lehen, zerbitzariak behar saioan datuen nolabait gordetzeko. Web orri bat osatzen duten PHP fitxategi desberdinetan ari PHP interpretea invocations independente gisa exekutatu beraz, tokiko aldagai ezin dira beraien artean banatuko. Horren ordez, zerbitzaria behar du gure saio datuak gordetzeko leku batzuetan bat baino gehiago dela. php fitxategietara sartu daitezkeen. Bigarrena, zerbitzariak saio datu lotzeko bakarrik nire nabigazio saioa beharrak. Abiatu saioa Facebook-I, Facebook ere sartu, aldi berean, beste milioika pertsona daude seguruenik. Baina zerbitzariak nire datuak lotzen modu batzuk behar nire uneko saioa eta saio batekin norbaiten datuekin. Zorionez, PHP egileek pentsatu inguru hori guztia guretzat, beraz, ez dugu behar honen edozein geure burua ezartzeko. Baina dezagun PHP duenaren lehenetsita begirada bat. Noiz PHP lehen aldiz session_start dituen orri bat bisitatu dut, PHP ausazko balio handi bat sortuko du. Arte session_destroy deitzen da-edo ez dut edozein PHP gune horretan orriak bisitatu batentzat berriz- balioa ausazko eta seguruenik berezia dela me lotutako egingo. Horrela zerbitzariari my browsing session identifikatzeko bide batzuk ditu bestela norbaiten aurka. Uneko saioan izena begirada bat hartu ahal izango dugu PHP funtzioa, session_ID erabiliz. Hemen ari gara, besterik gabe, gure saioaren identifikatzailea balioa outputting. Hala bada, berriro dugu adibidez web app du saioa, eta orain nabigatzeko sessid.php, karaktere-kate luze honetan ikusiko dugu, eta hori egungo nire saioaren identifikatzaile da, eta hori zerbitzarira nor naizen pista nola mantentzen da. Ados, baina egin dugu bakarrik arazoa erdi konponduta. Ziur, zerbitzariak orain nirekin identifikatzeko bide batzuk ditu, baina beste orri bat bisitatu dut, zerbitzariak identifikatzailea duten bera berrerabiltzea behar baizik eta berri bat sortzera baino. Gogoratu, tokiko aldagai bat deklaratzen dut foo.php bada eta orduan bisitatu bar.php, bar.php no foo.php zer gertatu zen jakitea ez dauka. Beraz php lehenetsi saio ezartzeko eskatzen nabigatzailea gogorarazten zerbitzariari eta horrek saioaren izena da erabiltzeko. Honek cookie forma ezarri. Cookie-en delicious merienda-a izateaz gain batek besterik ez da, zure ordenagailuko testu-fitxategi txiki bat zerbitzari bat web nabigatzaile bidez idatzi daiteke. Beraz PHP nire berezia saio ID sortzen ondoren session_start bidez, Da web nabigatzailea kontatzeko identifikatzailea duten gordetzeko tokiko testu-fitxategi bat, edo cookie batean joan. Ondoren arakatzailera identifikatzailea duten sartuko du eskaera guztietan egiten dela zerbitzariari. Beraz, benetan, web zerbitzaria ez da gogoratzeko nor naizen. Horren ordez, web nabigatzailea da, besterik gabe, identifikatzaile bakarra gogoratuz PHP erabili da eta, ondoren, etengabe zerbitzariari gogoraraziz identifikatzailea duen zer den. Duten bidea, nire erabiltzailearen izena bezalakoa da informaziorik zerbitzaria ez nire web nabigatzailean gordeta. Nabigatzailea besterik non PHP informazio hori gordetako zerbitzari kontatzen beraz PHP hura berreskuratu ahal. Beraz, galdera da, non da PHP benetan informazio hori jasoko segurutzat jotzen? Berez, PHP zure saio datuak gordeko / tmp edo 'temp' karpeta barruan fitxategi batean. Fitxategi hori izenarekin saioaren izena ere izango du beraz PHP zehaztu ahal horrek irakurri eta bertatik bakarrik saioren bidez idatzi fitxategiak. Ondo da. Hargatik ireki Sarea fitxa Chrome arazketan giltza goiko eskuineko ikonoaren bidez. Orain dezagun burua berriro hello.php izateko. Dezagun sakatu HTTP eskaera handiago ikusteko hello.php eta ondoren egin klik goiburuak on. Hemen ikusten cookiea goiburua duten PHPSESSID izeneko gako bat dauka ahal izango dugu, edo PHP saio izena-rekin duen katea luze hori bera ikusi dugu, hau da, balio bat denean sessid.php bisitatu dugu. Hau da, zehazki nola nabigatzailea zer saioaren izena erabili behar da zerbitzari gogoraraziz da. Honez da barne HTTP goiburu batean. Ondo da. Dezagun burua terminalera itzuli. Dezagun nabigatu / tmp, non PHP saio informazio gordetzeko modu lehenetsiz izateko. Seguru aski, aldi baterako karpeta honen barruan, hemen berean zehatza saioaren izena duen fitxategi bat da. Ireki dugu fitxategi hau bada, ikusi ahal izango dugu PHP diskoko nire saioarekin nola ordezkatzen da. Hemen katea "Tommy" da funtsezko gordeko, 'izena,' hau da, zehazki zer espero genuen. Eta hori PHP saio ikuspegi orokor bat. Zer ikusi besterik ez dugu bakarrik saioak ezartzeko lehenetsia zen. Izan ere, webgune asko aldatu portaera lehenetsia honetan eraginkortasunez PHP saioak gordetzeko errendimendua hobetzeko interesa. Nire izena Tommy da, eta hau da CS50. [CS50.TV]