⊗ppPmSsFr 322 of 447 menu

Sesje i formularze w PHP

Załóżmy, że mamy dwa pliki PHP. W pliku test1.php umieśćmy formularz pytający użytkownika o dwie liczby:

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

W tym samym pliku umieśćmy kod przetwarzania formularza. W tym kodzie zapiszemy dane pól formularza do sesji:

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

Waży niuans: w pliku kod przetwarzania formularza powinien znajdować się przed samym formularzem. Dlaczego: ponieważ w tym kodzie pracujemy z sesją, a więc nie powinno być żadnego wyjścia na ekran przed tym.

Teraz w pliku test2.php znajdźmy sumę liczb zapisanych w sesji:

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

W jakiej kolejności to wszystko powinno działać? Najpierw użytkownik wchodzi na stronę test1.php, wypełnia formularz i klika przycisk. Potem ponownie trafia na test1.php, ale już z wysłanymi danymi formularza. Przy tym trafia do warunku, w którym zapisujemy dane formularza do sesji.

Następnie użytkownik powinien ręcznie wejść na stronę test2.php - i tam zobaczy sumę wprowadzonych liczb.

Możesz zapytać: po co tak kombinować? W końcu można było od razu wysłać formularz na stronę test2.php. Rzecz w tym, że w tym przypadku wygoda polega na tym, że sam formularz i kod jego przetwarzania znajdują się na jednej stronie. Oczywiście, nie zawsze jest to wygodne, ale czasami bywa potrzebne.

Na jednej stronie za pomocą formularza zapytaj użytkownika o nazwisko, imię i wiek. Zapisz te dane w sesji. Przy wejściu na inną stronę wyświetl te dane na ekranie.

Polski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wykorzystujemy pliki cookie do działania strony, analizy i personalizacji. Przetwarzanie danych odbywa się zgodnie z Polityką prywatności.
zaakceptuj wszystkie dostosuj odrzuć