Ovo treba da stoji negde unutar forme.
a slanje.php ovako nekako..
$error='';
$name='';
$email='';
$company='';
$message='';
if(isset($_POST['submit'])){
$name=htmlentities($_POST['name'], ENT_QUOTES, "UTF-8");
$email=htmlentities($_POST['email'], ENT_QUOTES, "UTF-8");
$company=htmlentities($_POST['company'], ENT_QUOTES, "UTF-8");
$message=htmlentities($_POST['message'], ENT_QUOTES, "UTF-8");
# Ovde nastavljaš sa svojim kodom.
# možeš if else ili if elseif else ili ... switch:case
# Recimo, konkretan primer provere jel' ime uopšte i upisano, bilo šta.
switch($_POST['submit']):
case(empty($name)):
$error='Prazno polje za unos imena';
break;
# i tako redom za sve.. npr. case(is_numeric($name)): ... pridodaješ neophodno ili ono što misliš da će biti potrebno,
# a za default "slučaj" ostaviš recimo ovako..
default:case(empty($error)):
# i ovde ide kod za slanje pošte ...
# .. headere si već upisao, subjekat također, poruku i email imaš iz posta..
if(mail($email, $subject, $message, $headers)){ # ...... ubij sesiju, šta god.. }
else {
$error='Neuspelo slanje, pokušajte kasnije';
}
continue;
endswitch;
}
Na nekim hosting rešenjima, mail neće da se pošalje sa 'send' vrednošću, već samo sa 'submit', dok bi po pravilu trebalo da bude 'send' ako se samo mail šalje.
Tako da možeš to fino da promeniš. Kod koji si ostavio je mnogo loš i nedovršen, više vežbe.
I za dugme uvek koristi <button>Dugme</button> zbog css-a, jer chrome ne poznaje šta je to input:focus ukoliko input ima value send ili submit, ako se ne varam dok button:active, da.
[Ovu poruku je menjao plus_minus dana 27.06.2012. u 02:26 GMT+1]