[ KDane @ 18.09.2012. 10:41 ] @
Zdravo,

imam sljedeći kod koji šalje mailove sa kontakt forme.

Code:

<?php
$jezik=$_GET['jezik'];
$naziv=$_POST['naziv'];
$adresa=$_POST['adresa'];
$ime=$_POST['ime'];
$telefon=$_POST['telefon'];
$faks=$_POST['faks'];
$email=$_POST['email'];
$tema=$_POST['tema'];
$poruka=$_POST['poruka'];
if (mail("[email protected]",
"SUBJECT",
"Naziv organizacije: $naziv
Adresa organizacije: $adresa
Osoba za kontakt: $ime
Telefon: $telefon
Faks: $faks
Email: $email
Naslov poruke: $tema
Poruka: $poruka
Jezik: $jezik
$HTTP_USER_AGENT")) {
  header("location:index.php?id=06proba&jezik=$jezik&item=p");
 } else {
  header("location:index.php?id=06proba&jezik=$jezik&item=f");
 } 
?>


Kako da ovdje ubacim da mi sva polja za unos budu obavezna?
[ StaX_ @ 18.09.2012. 11:43 ] @
Nemoj tu da proveravaš, ovde možeš proveriti da li je sa forme prosleđen podatak pa ukoliko je prazan ili u formatu koji ti ne odgovara vratiti korisnika na stranicu gde popunjava formu.
Ipak ti predlažem da, po meni, uradiš bolju varijantu, a to je da formu prilikom pupunjavanja proveravaš pre slanja na ovu stranicu, a za to možeš iskoristiti npr. jquery validate.
Cilj je da korisnik odmah na jednom mestu gde i popunjava formu bude obavešten da je nešto obavezno ili pogrešno unešeno, i da ispravi sve zahteve pre prosleđivanja podataka, a ne da o greškama bude obavešten posle prosleđivanja, pa da mora da se vrati na stranicu kontakt forme i, ukoliko je to slučaj, ponovo popunjava sve ono što je već unosio u formu.
[ plague @ 18.09.2012. 14:31 ] @
@StaX_ Svakako, bilo bi dobro proveriti na klijentskoj strani da li je su podaci u potrebnom formatu, ali je nedgovorno uraditi to samo tu. Korisnik uvek moze da iskljuci javascript i tada, ako nisi obradio podatke na serverskoj strani mozes da sebi napravis ogromne probleme. Kod sqinject-a je to gotovo prva stvar koju uradis.

Takodje, ako serverska strana nadje gresku u podacima ne mora znaciti da ce korisnik sve morati ponovo da popunjava. To zavisi od umesnosti programera, jer on uvek moze da preusmeri na prethodnu/trenutnu stranicu i preko GET/POST/SESSION parametra da popuni polja koja su prosla validaciju.
[ Burgos @ 18.09.2012. 14:41 ] @
Pored javascript validacije OBAVEZNO je napraviti i serverside validaciju.

Op, preteče, ostao mi otvoren tab.