⊗ppPmSsFr 322 of 447 menu

Sesjoner og skjemaer i PHP

La oss si at vi har to PHP-filer. La oss i filen test1.php plassere et skjema som spør brukeren om to tall:

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

I samme fil plasserer vi koden som behandler skjemaet. I denne koden vil vi skrive dataene fra input-feltene til sesjonen:

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

En viktig nyanse: i filen må koden for skjemabehandling stå før selve skjemaet. Hvorfor: fordi i denne koden arbeider vi med sesjonen, og derfor bør det ikke være noen utdata til skjermen før dette.

La oss nå i filen test2.php finne summen av tallene som er lagret i sesjonen:

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

I hvilken rekkefølge bør alt dette fungere? Først går brukeren inn på siden test1.php, fyller ut skjemaet og trykker på knappen. Etter det havner de igjen på test1.php, men nå med de sendte skjemadataene. Samtidig havner de i betingelsen, der vi skriver skjemadataene til sesjonen.

Deretter må brukeren manuelt gå inn på siden test2.php - og der vil de se summen av de innskrevne tallene.

Du kan spørre: hvorfor gjøre det så innfløkt? Tross alt kunne man umiddelbart sendt skjemaet til siden test2.php. Saken er at i dette tilfellet ligger bekvemmeligheten i at selve skjemaet og koden for dens behandling plasseres på samme side. Dette er selvfølgelig ikke alltid praktisk, men noen ganger kan det være nødvendig.

På én side, ved hjelp av et skjema, spør du brukeren om etternavn, fornavn og alder. Skriv disse dataene til sesjonen. Ved innlogging på en annen side, vis disse dataene på skjermen.

Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis