Hirdetés
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- sziku69: Fűzzük össze a szavakat :)
- Real Racing 3 - Freemium csoda
- sziku69: Szólánc.
- gban: Ingyen kellene, de tegnapra
- Jhonny06: Új gépsárkány
- GoodSpeed: Harcban az adathalászokkal - az AI tud segíteni?
- urandom0: Száműztem az AI-t az életemből
Új hozzászólás Aktív témák
-
fordfairlane
veterán
válasz
ahetaton
#13559
üzenetére
Ezt validálásnak hívják, és jobb szerveroldalon csinálni. Egyrészt a már említett heterogén böngészőtámogatás miatt, másrészt mert valaki szórakozásból is próbálkozhat fals adatokkal, saját kliensből.
A megoldás az, hogy formsubmit esetén, ha a validálás nem sikerül, akkor a validálást kezelő programrész képes legyen megjeleníteni a formot ismét, behelyettesíteni a bevitt értékeket, és a validálási hibaüzenetet. Meg lehet oldani oldalújratöltéssel, és anélkül is, AJAX-szal.
-
Sk8erPeter
nagyúr
válasz
ahetaton
#13559
üzenetére
Egyelőre hagyd a francba JavaScriptes megoldásokat, első dolog, hogy legyen megoldva normálisan a szerveroldali validáció és feldolgozás, utána jöhet minden más kliensoldali szépítgetés. A required attribútum is csak HTML5-ös újítás, így olyan doctype-od is kell, hogy legyen, meg értelemszerűen a HTML5-öt nem támogató böngészőkben ez nem fog működni.
Azt kellene megoldanod, hogy amennyiben egy külön feldolgozó fájlban (lásd form elem action attribútumában lévő fájl) történik a form elküldött adatainak validálása, feldolgozása, akkor mondjuk ott átmenetileg egy session-változóba tedd a felhasználónak szóló figyelmeztetéseket, korábban kitöltött értékeket, majd az eredeti oldalra irányítsd vissza a felhasználót, ott írasd ki a figyelmeztetéseket, töltsd ki az űrlapot a korábban megadott adatokkal, majd töröld a session-változót. Tehát ennek az oldalnak a kiíratása ugyanaz, mint egyébként, csak pluszban ellenőrizned kell azt is, hogy adott session-változó az üzenetekkel, kitöltött adatokkal be van-e állítva, ha igen, kiíratsz mindent, kitöltesz mindent, ha nem, akkor pedig marad az üres form.
Ha azonos oldalon történik a validálás/feldolgozás, mint ahol a form is van (aminek mondjuk hátránya az F5 megnyomása során a böngésző figyelmeztetése, hogy biztosan el akarod-e küldeni újra az adatokat), akkor pedig értelemszerűen ugyanarra az oldalra rakod ki a figyelmeztetéseket, és újra kitöltöd a formot a kapott adatokkal (felhasználónak ne kelljen újra begépelnie). -
spammer
veterán
válasz
ahetaton
#13559
üzenetére
Ha a feldolgozó oldalon van az ellenőrzés, akkor meg kell formáznod, hogy ne sima fehér kap legyen

Vagy használj jQuery/js-t, ami ellenőrzi a submit gomb megnyomásakor, hogy nem üresek-e a mezők és akkor elküldeni sem tudják a formot.
Modern böngészők már támogatják a html5 required attribútomot is:
<input type="text" name="username" id="username" required>
Új hozzászólás Aktív témák
- Milyen NAS-t vegyek?
- Forrmell.enn
- Milyen egeret válasszak?
- Huawei Watch Fit 3 - zöldalma
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Huawei Watch GT 4 - kerek karék
- Intel Dual Core 2000 felhasználók barátságos offolós topikja
- Milyen billentyűzetet vegyek?
- Kertészet, mezőgazdaság topik
- AMD Navi Radeon™ RX 9xxx sorozat
- További aktív témák...
- Bontatlan ASUS TUF GAMING Z690-PLUS WIFI
- KINCS! 0 Perces Lenovo Thinkpad T14 G3 Golyóálló Üzleti Laptop 14" -60% Ryzen 5 Pro 6650U 16/1TB FHD
- Gigabyte Gamer config - i5-7400, 12GB DDR4, RTX 2060 120GB SSD
- KINCS! 0 Perces Lenovo Thinkpad T14 G3 Golyóálló Üzleti Laptop 14" -60% Ryzen 5 Pro 6650U 16/512 FHD
- Fejlesztés hiányában megmaradt 8GB SK Hynix 2400MHz DDR4 SO-DIMM
- Honor X7D / 6/128GB / Kártyafüggetlen / 12Hó Garancia
- Karácsonyi Akció! Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- BESZÁMÍTÁS! MSI B450M R5 5600X 32GB DDR4 512GB SSD ASUS ROG STRIX RTX 3070Ti 8GB Zalman Z1 PLUS 750W
- Számlás!Windows 10 Pro 11 Pro,Windows 10 Home 11 Home, Office 2016,2019,2021 ,Vírusirtok,Mac
- Dell Latitude 7470 14" QHD IPS touch, i5 6300U, 8GB RAM, SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi



