⊗ppPmSsFr 322 of 447 menu

Relácie a formuláre v PHP

Nech máme dva PHP súbory. Dajme do súboru test1.php formulár, ktorý sa pýta používateľa dve čísla:

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

V tomto istom súbore umiestnime kód spracovania formulára. V tomto kóde zapíšeme dáma vstupov do relácie:

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

Dôležitá nuansa: v súbore kód spracovania formulára musí byť umiestnený pred samotným formulárom. Prečo: pretože v tomto kóde pracujeme s reláciou, a to znamená, že by nemal byť žiadny výstup na obrazovku pred tým.

Teraz v súbore test2.php nájdime súčet čísel uložených v relácii:

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

V akom poradí by toto všetko malo fungovať? Najprv používateľ príde na stránku test1.php, vyplní formulár a stlačí tlačidlo. Potom sa opäť dostane na test1.php, ale už s odoslanými dátami formulára. Pritom sa dostane do podmienky, v ktorej zapisujeme dáta formulára do relácie.

Potom musí používateľ manuálne prísť na stránku test2.php - a tam uvidí súčet zadaných čísel.

Môžete sa opýtať: načo takto komplikovať? Veď bolo možné okamžite odoslať formulár na stránku test2.php. Vec sa má tak, že v tomto prípade je výhoda v tom, že samotný formulár a kód jeho spracovania sú umiestnené na jednej stránke. Takéto riešenie samozrejme nie je vždy výhodné, ale niekedy je potrebné.

Na jednej stránke pomocou formulára sa opýtajte používateľa na priezvisko, meno a vek. Zapíšte tieto dáta do relácie. Pri vstupe na druhú stránku zobrazte tieto dáta na obrazovke.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť