⊗ppPmSsFr 322 of 447 menu

Sesije i forme u PHP

Pretpostavimo da imamo dva PHP fajla. Stavimo u fajlu test1.php formu koja pita korisnika za dva broja:

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

U ovom istom fajlu postavimo kod za obradu forme. U ovom kodu ćemo upisati podatke iz input polja u sesiju:

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

Važan detalj: u fajlu kod za obradu forme mora biti postavljen pre same forme. Zašto: zato što u ovom kodu radimo sa sesijom, a to znači da ne sme biti nikakvog ispisa na ekran pre toga.

Sada ćemo u fajlu test2.php naći zbir brojeva sačuvanih u sesiji:

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

U kom redosledu ovo sve treba da radi? Prvo korisnik ode na stranicu test1.php, popuni formu i pritisne dugme. Nakon toga opet dolazi na test1.php, ali već sa poslatim podacima forme. Pritom dolazi u uslov, u koji upisujemo podatke forme u sesiju.

Zatim korisnik treba ručno da ode na stranicu test2.php - i tamo će videti zbir unetih brojeva.

Možete pitati: zašto tako komplikovati? Zar nije moglo odmah poslati formu na stranicu test2.php. Stvar je u tome, što u ovom slučaju pogodnost je u tome, što sama forma i kod njenog procesiranja se nalaze na jednoj stranici. To, naravno, nije uvek zgodno, ali ponekad bude potrebno.

Na jednoj stranici pomoću forme pitajte korisnika za prezime, ime i godine. Zabeležite ove podatke u sesiju. Pri odlasku na drugu stranicu prikažite ove podatke na ekranu.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij