Каркас формы для работы:
<FORM action="http://domen.com/script" method="get">
<P>
<LABEL for="firstname">First name: </LABEL>
<INPUT type="text" id="firstname"><BR>
<LABEL for="lastname">Last name: </LABEL>
<INPUT type="text" id="lastname"><BR>
<LABEL for="email">email: </LABEL>
<INPUT type="text" id="email"><BR>
<INPUT type="radio" name="sex" value="Male"> Male<BR>
<INPUT type="radio" name="sex" value="Female"> Female<BR>
<INPUT type="submit" value="Send"> <INPUT type="reset">
</P>
</FORM>


Возможный вариант интернационализации формы:

<?php
header( "Content-Type: text/html; charset=utf-8;" );
header( "Content-Encoding: utf-8" );

$curLng = $_GET['curLng'];

switch($curLng){
case"rus":
$fName = "Имя";
$lName = "Фамилия";
$eMail = "Е-майл";
$mMale = "Мужчина";
$fMale = "Женщина";
$sendTxt = "Послать";
$resetTxt = "Очистить";

$additionChks = "Дополнительно";
$chk1 = "Подписаться на новости сайта.";
$chk2 = "Получать персональные сообщения на e-mail.";
$chk3 = "Подписаться на рекламу от наших спонсоров.";

$needFName = "Введите ваше имя.";
$needLName = "Введите вашу фамилию.";
$needEMail = "Введите ваш е-mail.";

break;
case"lat":
$fName = "Vards";
$lName = "Uzvards";
$eMail = "E-pasts";
$mMale = "Virietis";
$fMale = "Sievete";
$sendTxt = "Sutit";
$resetTxt = "Dzest";

$additionChks = "Papildus";
$chk1 = "Parakstities uz saita jaunumi izsutisanu.";
$chk2 = "Sanemt personalie izzinas uz e-mailu.";
$chk3 = "Parakstities uz musu sponsoriem reklammas izsutisanu.";

$needFName = "Jusu vards ludzu.";
$needLName = "Jusu uzvards ludzu.";
$needEMail = "Jusu e-mail ludzu.";

break;
default:
$fName = "First name:";
$lName = "Last name: ";
$eMail = "email:";
$mMale = "Male";
$fMale = "Female";
$sendTxt = "Send";
$resetTxt = "reset";
$additionChks = "Additional";
$chk1 = "Subscribe to site news receiving.";
$chk2 = "Receive personal messages to e-mail.";
$chk3 = "Subscribe to receive advertisings from our sponsors.";

$needFName = "Enter first name.";
$needLName = "Enter last name.";
$needEMail = "Enter Your email.";
}
?>
<FORM action="getData1.php" method="GET" id="mainForm" >
<P>
<LABEL for="firstname"> <?=$fName?> </LABEL>
<INPUT type="text" id="firstname" name="firstName" ><BR>
<LABEL for="lastname"> <?=$lName?> </LABEL>
<INPUT type="text" id="lastname" name="lastName"><BR>
<LABEL for="email"> <?=$eMail?> </LABEL>
<INPUT type="text" id="email" name="eMail" ><BR>
<INPUT type="radio" name="sex" value="Male"> <?=$mMale?><BR>
<INPUT type="radio" name="sex" value="Female"> <?=$fMale?><BR>
<INPUT type="submit" value=" <?=$sendTxt?>">
<INPUT type="reset" value=" <?=$resetTxt?>">
<hr /> <?=$additionChks?><br />
<input type="checkbox" name="addChksArr[]" value="su1" checked > <?=$chk1?><br />
<input type="checkbox" name="addChksArr[]" value="su2" > <?=$chk2?><br />
<input type="checkbox" name="addChksArr[]" value="su3" checked > <?=$chk3?><br />
</P>
</FORM>


Функция JavaScript для проверки заполненности полей формы перед передачей данных на сервер:

<script language="javascript" type="text/javascript" >
function chkFlds(){
var errorMes = "";
if(document.forms.mainForm.firstname.value == "")
errorMes += " <?=$needFName?>\n";
if(document.forms.mainForm.lastname.value == "")
errorMes += " <?=$needLName?>\n";
if(document.forms.mainForm.email.value == "")
errorMes += " <?=$needEMail?>\n";

if(errorMes == "")
return true;
else
alert(errorMes);

return false;

} </script>


Логика вывода сообщения в зависимости от пола посетителя:

switch($sex){
case "Male":
?>
Уважаемая <?=$firstName+" "+$lastName?>!<br />
Ваш електронный адрес <?=$eMail?> зарегестрирован для получения новостей о новинках бижутерии с нашего сайта!
<?
break;
case "Male":
?>
Уважаемый <?=$firstName+" "+$lastName?>!<br />
Ваш електронный адрес <?=$eMail?> зарегестрирован для получения новостей о недвижимость в Бразилии с нашего сайта!
<?
break;
default:
Уважаемое <?=$firstName+" "+$lastName?>!<br />
Ваш електронный адрес <?=$eMail?> зарегестрирован для получения новостей о “Вестник астробиологии” с нашего сайта!
break;
}


РНР функция генерации даты в нужном формате:
date("d.m.Y G:i") выведет примерно такой результат: 30.10.2008 17:22

Упражнения

Пример

Создадите форму заказа товара.
В форме должны присутствовать два скрытых поля
•uID (User ID) содержащее произвольное шестизначное число;
•queryDate Содержащее текущую дату и время.

Также необходимо:
•реализовать проверку на наличие заполнения обязательных полей и выводить сообщение, если не все они заполнены;
•реализовать возможность выбора одного из трёх языков отображения формы.

Форма должна отправлять данные в файл getData2.php, в котором должна производится проверка полученных данных на корректность и выводится строка об успешном получении заказа.

Пример желаемого вывода:
Уважаемый заказчик!
Введённый Вами пароль совпал с тем, что хранится в нашей базе данных.
Ваш заказ успешно зарегистрирован в системе в 30.10.2008 17:22. Как только он будет обработан оператором, на адрес Вашей электронной почты будет выслано извещение!
Подробности заказа:
Дата: 30.10.2008 17:22
Товар: Шахматы
Шашки
Язык интерфейса: Русский
В случае, если были отмечены дополнительные возможности, нужно также вывести
Дополнительно вы:
Подписаны на рассылку информации о новинках на нашем сайте.
Hosted by uCoz