⊗ppPmSsAr 323 of 447 menu

Taulukoiden tallentaminen PHP:n sessioon

Tarkastellaan koodia, jonka teimme edellisessä oppitunnissa:

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

Itse asiassa olisi voinut ottaa ja tallentaa kaikki lomakkeen tiedot heti $_SESSION:iin:

<?php if (!empty($_GET)) { $_SESSION = $_GET; } ?>

Ja tiedostossa test2.php tehdä näin:

<?php if (!empty($_SESSION)) { echo array_sum($_SESSION); } ?>

Tämän lähestymistavan etuna on, että koodimme toimii riippumatta lomakkeen input-kenttien määrästä.

Siinä on kuitenkin myös haittapuoli: korvaamalla $_SESSION:n me ylikirjoitamme kaikki tiedot, jotka siellä aiemmin olivat. Kuka tietää mitä toinen skriptimme on sinne tallentanut? Ja me poistamme sen.

Tehdään toisin:

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

Kuten näette, sessio-muuttujaan tallensimme ei yhden arvon, vaan kokonaisen taulukon. Nyt tiedostossa test2.php voimme laskea tämän taulukon elementtien summan:

<?php if (!empty($_SESSION)) { echo array_sum($_SESSION['nums']); } ?>

Kysy yhdellä sivulla lomakkeen avulla käyttäjältä nimi, ikä, palkka ja vielä jotain muuta. Tallenna nämä tiedot yhteen session muuttujaan taulukon muodossa. Kun siirryt toiselle sivulle, käy läpi tallennetut tiedot silmukalla ja tulosta jokainen taulukon elementti omassa li-tagissaan ul-tagin sisä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ää