Forum » Izdelava spletišč » Kontaktna forma - ohranjanje vnešenih podatkov ob napačnem vnosu
Kontaktna forma - ohranjanje vnešenih podatkov ob napačnem vnosu
ta-mau ::
Forma je sestavljena iz dveh delov. Eforma.php ter contact.php kjer se preverja pravilnost podatkov ter odpošlje email. Zadeva je sledeča, da ob postanju prve strani se podatki iz okvirčkov izbrišejo in v primeru, da so le ti bili napačni, nas contact.php preusmeri ponovno na prvo stran, ki pa postane prazna kar pa npr zna bit zelo moteče za tiste kateri so napisali celotno sporočilo in le pozabili vpisati naslov. Torej iščem rešitev katera bi omogočila da kljub napačnim podatkov določene izmed njih ohrani v okvirčkih.
ps:Ali mogoče php podpira opcijo focus s katero lahko usmerimo pisanje v točno določen field?
ps:Ali mogoče php podpira opcijo focus s katero lahko usmerimo pisanje v točno določen field?
b ::
Naredi tako, da postaš na isto stran kot je forma, preveriš podatke, in če kaj ne ustreza, izprazniš samo polje, ki ti ni všeč, ter zraven zapišeš opozorilo. Če je vse v redu, pošlješ mail (ali karkoli pač narediš) ter obiskovalca redirectas na success page (ali pa nazaj na index ali karkoli pač želiš)
Enkrat sem naletel na nekaj podobnega narejeno s Phorm-om, ta ima to super urejeno. Narediš template ter rule file, v katerem piše, kakšne lastnosti mora imeti input. Ima pa ta phorm, kolikor vem, precej slab track record glede varnosti, ampak se mi zdaj ne da iskat linkov...
Enkrat sem naletel na nekaj podobnega narejeno s Phorm-om, ta ima to super urejeno. Narediš template ter rule file, v katerem piše, kakšne lastnosti mora imeti input. Ima pa ta phorm, kolikor vem, precej slab track record glede varnosti, ampak se mi zdaj ne da iskat linkov...
ta-mau ::
hvala vsem za nasvete.. mislim da sem našel to kar sem iskal.... malo modifikacij pa bo ko šus :)
wat56 ::
Najlažje boš problem rešil, če boš naredil validacijo podatkov kar na tisti strani, kjer imaš formo.
Torej preden bo uporabnik kliknil na gumb Pošlji, bo tvoja koda preverila primernots podatkov. Če bo kakšen error boš naprimer spremenil value nekega label-a etc .. stran se tako ne bo osvežila in podatki bodo ostali na mestu.
Če pa imaš ločeno pa bi bilo smotrno tako: Podatke pošlješ na contact.php kjer jih dobiš z _POST, tam preveris ce je kak error in ce je posljes te podatke v nazaj na eforma.php, ter jih tam vneseš v forme. ($value = _POST['priimek'];)
Seveda boš moral na začetku kode v eform.php preverjat če so spremenljivke polne oz prazne in če so prazne bo eform.php to smatral kot da je bila stran naložena prvič.
Tako nekako.
p.s. uporabljaj regular expressions za validacijo email naslova etc ...
p.s.s misliti moraš tudi na okoliščino kjer uporabnik izklopi javascript v browserju - javascript validacija ni ravno primerna. Zato mora biti validacija 'hard coded' :)
Torej preden bo uporabnik kliknil na gumb Pošlji, bo tvoja koda preverila primernots podatkov. Če bo kakšen error boš naprimer spremenil value nekega label-a etc .. stran se tako ne bo osvežila in podatki bodo ostali na mestu.
Če pa imaš ločeno pa bi bilo smotrno tako: Podatke pošlješ na contact.php kjer jih dobiš z _POST, tam preveris ce je kak error in ce je posljes te podatke v nazaj na eforma.php, ter jih tam vneseš v forme. ($value = _POST['priimek'];)
Seveda boš moral na začetku kode v eform.php preverjat če so spremenljivke polne oz prazne in če so prazne bo eform.php to smatral kot da je bila stran naložena prvič.
Tako nekako.
p.s. uporabljaj regular expressions za validacijo email naslova etc ...
p.s.s misliti moraš tudi na okoliščino kjer uporabnik izklopi javascript v browserju - javascript validacija ni ravno primerna. Zato mora biti validacija 'hard coded' :)
Zgodovina sprememb…
- spremenilo: wat56 ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | html/PHP kontakt obrazecOddelek: Izdelava spletišč | 2045 (1590) | Netrunner |
» | Kako preveriti ali so vnosna polja izpolnjena?Oddelek: Izdelava spletišč | 1992 (1646) | bluefish |
» | PHP - nujno! - email formaOddelek: Izdelava spletišč | 2037 (1719) | DonMatejo |
» | PHP in link ?mode= ...Oddelek: Izdelava spletišč | 1210 (1084) | osti1 |
» | PHP KONTAKTOddelek: Izdelava spletišč | 1503 (1340) | rkasteli |