Hirdetés
- Garmin Fenix 7 és 7S - profi sport megszokásból
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Samsung Galaxy A54 - türelemjáték
- Apple iPhone 17 Pro Max – fennsík
- Ennyit dobott egy telefon gyártási költségén a memóriakrízis a Xiaomi szerint
- Xiaomi 17 Ultra - jó az optikája
- Kétezer eurós csomag lehet a Vivo X300 Ultra
- Samsung Galaxy S25 - végre van kicsi!
- EarFun Air Pro 4+ – érdemi plusz
- Xiaomi 15T Pro - a téma nincs lezárva
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
Speeedfire
#6559
üzenetére
"Nem szokták"
Kik nem szokták?
Nyilván van, aki átmeneti adatbázis-bejegyzést hoz létre ilyenkor, de én nem pazarlom ilyenekre az adatbázis korlátozott erőforrásait, épp ezért is használom legtöbbször a sessiont ilyen célra (is). Persze csak addig tárolom, ameddig nagyon szükséges - leginkább hiba esetén. A form adatait mindig külön feldolgozó fájlban dolgozom fel, és amennyiben ezt nem AJAX-szal oldom meg (azért úgy a szép, de működjön annál is, akinél ki van kapcsolva a JavaScript), akkor ha nincs hiba, eltárolom az adatokat adatbázisban, ha mégis hiba történt, a form adatait elmentem session-változókba, hogy a felhasználónak ne kelljen újra begépelnie az adatokat (szerintem ez elég fontos, engem is halálra idegesít, ha nem így oldják meg), majd visszairányítom a júzert az eredeti oldalra (ahonnan a formot elküldték), és ott a form megfelelő mezőibe kiíratom a session-változókban tárolt korábbi űrlapadatokat, majd ezután rögtön meg is szüntetem ezek tárolását (a formon már úgyis látszik, majd a felhasználó elküldi újból ugyanezeket az adatokat, ha nagyon akarja).
Érdemes ezeket az adatokat egy többdimenziós megoldással tárolni, hogy könnyű legyen őket megszüntetni is, valahogy így (egyszerű példa):
$_SESSION['form_data'] = array();
$_SESSION['form_data']['user_name'] = $_POST['user_name'];
$_SESSION['form_data']['user_address'] = $_POST['user_address'];
// ....
Ha meg akarod szüntetni az eltárolt formadatokat, elég ennyit csinálni:
unset($_SESSION['form_data']);
Új hozzászólás Aktív témák
- Óriás! Gamer PC-Számítógép! Csere-Beszámítás! R7 5700 / RTX 3080 / 16GB DDR4 / 512GB SSD!
- 270 - Lenovo Yoga Pro 9 (16IAH10) - Intel Core U9 285H, RTX 5070 (ELKELT)
- HP EliteBook 640 G10 - 14" FullHD IPS - i5-1335U - 8GB - 512GB - Win11 - 1 év garancia - MAGYAR
- AKCIÓ! MacBook Pro 13 M1 8GB RAM 512GB SSD notebook garanciával hibátlan működéssel
- AKCIÓ!!! Sosemhasznált! HP OmniBook 5 i7-1355U 16GB 1TB 16" FHD+ Gar.: 1 év
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


