⊗ppPmSsFr 322 of 447 menu

Sesijos ir formos PHP

Tarkime, kad turime du PHP failus. Failelyje test1.php patalpinkime formą, kuri paklausia vartotojo dviejų skaičių:

<form method="GET"> <input name="num1"> <input name="num2"> <input type="submit"> </form>

Šiame pačiame faile patalpkime formos apdorojimo kodą. Šiame kode įrašysime įvestų duomenis į sesiją:

<?php session_start(); if (!empty($_GET)) { $_SESSION['num1'] = $_GET['num1']; $_SESSION['num2'] = $_GET['num2']; } ?>

Svarbus niuansas: faile formos apdorojimo kodas turi būti prieš pačią formą. Kodėl: nes šiame kode mes dirbame su sesija, o tai reiškia, kad negali būti jokios išvesties į ekraną prieš tai.

Dabar faile test2.php suraskime į sesiją išsaugotų skaičių sumą:

<?php if (!empty($_SESSION)) { echo $_SESSION['num1'] + $_SESSION['num2']; } ?>

Kokia seka visa tai turėtų veikti? Pirmiausia vartotojas užėjęs į pushlapį test1.php, užpildo formą ir paspaudžia mygtuką. Po to vėl pateks į test1.php, bet jau su išsiųstais formos duomenimis. Tuo metu jis pateks į sąlygą, kurioje mes įrašome formos duomenis į sesiją.

Tuomet vartotojas turi rankiniu būdu užėiti į pushlapį test2.php - ir ten jis pamatys įvestų skaičių sumą.

Galite paklausti: kam taip komplikuoti? Juk galima buvo iš karto išsiųsti formą į pushlapį test2.php. Esmė ta, kad šiuo atveju patogumas yra tas, kad pati forma ir jos apdorojimo kodas yra talpinami viename puslapyje. Tai, žinoma, patogu ne visada, bet kartais būna reikalinga.

Viename puslapyje, naudojantis forma, paklauskite vartotojo pavardės, vardo ir amžiaus. Įrašykite šiuos duomenis į sesiją. Užėjus į kitą pushlapį, atvaizduokite šiuos duomenis ekrane.

Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti