Korlátlan számban létrehozható mezők validálása?
Sziasztok!
Javascriptel létrehozott mezőcsomag (felhasználói adatok bekérésére szolgáló inputok)at hozok létre javascriptel amit utána a létrehozott "felhasználói mezőcsomag" számától függően az összes mezőt validáln, utána sql adatbázisba feltölteni szeretnék. Nektek erre milyen elképzeléseitek vannak?
Előre is nagyon szépen köszönöm a segítséget, válaszokat!
Az ajax csak akkor szükséges, ha a szerveradatokhoz akarsz hozzáférni.
Új uniformizált mezőcsomagok hozzáadását egy űrlaphoz a natív javascript használatával is megoldhatod. Akkor kellhet esetleg ajax, ha a hozzáadáskor szerveres (pl. adatbázisból vett) adatokat is fel akarsz tüntetni, mondjuk egy select mezőt feltölteni megfelelő adatokkal.
A validálás többféle lehet. Egyrészt végezheti a html5 is, hiszen a beviteli mezőkre tehetők olyan attribútumok, amik ezt lehetővé teszik (pl. important).
Végezheted javascripttel is (elfogva a sumbit eseményt), amihez szintén csak akkor van szükség ajax-ra, ha egyeztetni akarod a bevitt adatokat a szerveren tároltakkal (pl. jelszó ellenőrzése)
Ami elkerülhetetlen az nyilván az elküldés utáni szerveres validálás.
Minden esetben a javascripttel felépített új mezőstruktúrának egy szabályt kell követnie, amin a php (vagy a javascript) végigiterálhat függetlenül a létrehozott beviteli mezők számától.
Ezt megoldhatod az input mezők tömbösítésével:
<input name = "data1[]" value=""> ... <input name = "data2[]" value="">
vagy az elnevezések szervezésével:
<input name = "data1_1" value=""> ... <input name = "data1_8" value="">
...
<input name = "data10_1" value=""> ... <input name = "data10_8" value="">
Az első eset egy kicsit egyszerűbb, itt a post-ban visszakapott data1, dataX tömböket kell csak validálni.
A második esetben végig kell haladni egy cikluson, és megvizsgálni, hogy az adott post létezik-e, és ha nem, akkor abbahagyni a validálást, vagy az adatkiértékelés/feltöltést. Ráadásul ez esetben az új mezőcsomag beszúrása előtt ellenőrizni kell melyik volt az utolsó sorszám.
Az ilyen custom mezők létrehozását egy javasciptes keretrendszerrel könnyebb megvalósítani mint natív js-sel, ezért javaslom hogy próbálj ki egy react, vagy angular csomagot, de egy jquery is sokat segíthet.
Sok sikert!
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!