⊗ppPmSsFr 322 of 447 menu

Istunnot ja lomakkeet PHP:ssä

Oletetaan, että meillä on kaksi PHP-tiedostoa. Laita tiedostoon test1.php lomake, joka kysyy käyttäjältä kahta numeroa:

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

Samaan tiedostoon laitamme lomakkeen käsittelykoodin. Tässä koodissa kirjoitamme syöttökenttien tiedot istuntoon:

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

Tärkeä vivahde: tiedostossa lomakkeen käsittelykoodin tulee olla ennen itse lomaketta. Miksi: koska tässä koodissa työskentelemme istunnon kanssa, eikä siksi saa olla minkäänlaista tulostusta näytölle ennen tätä.

Etsitään nyt tiedostossa test2.php istuntoon tallennettujen numeroiden summa:

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

Missä järjestyksessä tämän kaiken pitäisi toimia? Ensin käyttäjä menee sivulle test1.php, täyttää lomakkeen ja painaa nappia. Tämän jälkeen hän päätyy taas sivulle test1.php, mutta nyt lähetetyillä lomaketiedoilla. Samalla hän päätyy ehtoon, jossa kirjoitamme lomaketiedot istuntoon.

Sitten käyttäjän tulee manuaalisesti mennä sivulle test2.php - ja siellä hän näkee syöttämiensä numeroiden summan.

Saattaa kysyä: miksi tehdä näin monimutkaisesti? Eihän voisi vain lähettää lomaketta suoraan sivulle test2.php. Asia on siinä, että tässä tapauksessa mukavuus on siinä, että itse lomake ja sen käsittelykoodi sijaitsevat samalla sivulla. Tämä ei tietenkään aina ole kätevää, mutta joskus sitä tarvitaan.

Kysy samalla sivulla lomakkeen avulla käyttäjältä sukunimi, etunimi ja ikä. Tallenna nämä tiedot istuntoon. Kun siirryt toiselle sivulle, näytä nämä tiedot näytöllä.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää