JavaScript validate.html
<head><title>Пример формы</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<style type="text/css">.signup { border: lpx solid #999999;
font:normal 14px helvetica; color:#444444; }
</style>
<script type="text/javascript">
function validate(form)
{
fail=validateForename(form.forename.value)
fail+=validateSurname(form.surname.value)
fail+=validateUsername(form.username.value)
fail+=validatePassword(form.password.value)
fail+=validateAge(form.age.value)
fail+=validateEmail(form.email.value)
if(fail=="")return true
else { alert(fail);return false}
}
</script>
</head>
<body>
<table class="signup" border="0" cellpadding="2" cellspacing="5" bgcolor="#eeeeee">
<th colspan="2" align="center"> Регистрационная форма </th>
<form method="post" action="adduser.php" onsubmit="return validate(this)">
<tr><td> Имя </td><td><input type="text" maxlength="32" name="forename" /></td></tr>
<tr><td> Фамилия </td><td><input type="text" maxlength="32" name="surname" /></td></tr>
<tr><td> Логин </td><td><input type="text" maxlength="16" name="username" /></td></tr>
<tr><td> Пароль </td><td><input type="text" maxlength="12" name="password" /></td></tr>
<tr><td> Возраст </td><td><input type="text" maxlength="3" name="age" /></td></tr>
<tr><td> Почта </td><td><input type="text" maxlength="64" name="email" /></td></tr>
<tr><td colspan="2" align="center"><input type="submit" value="Зарегистрироваться" /></td>
</tr></form></table>
<script type="text/javascript">
function validateForename(field)
{
if(field=="")return "Не введено имя.\n"
return ""
}
function validateSurname(field)
{
if(field=="")return "Не введена фамилия.\n"
return ""
}
function validateUsername(field)
{
if(field=="")return "Не введено имя пользователя.\n"
else if(field.length < 5)
return "В имени пользователя должно быть не менее 5 символов.\n"
else if(/[^a-zA-Z0-9_-]/.test(field))
return "В имени пользователя разрешены только a-z.A-Z.0-9.-и _.\n"
return ""
}
function validatePassword(field)
{
if(field=="")return "Не введен пароль.\n"
else if(field.length < 6)
return "В пароле должно быть не менее 6 символов.\n"
else if(!/[a-z]/.test(field) || !/[A-Z]/.test(field) || !/[0-9]/.test(field))
return "Пароль требует 1 символа из каждого набора a-z.A-Z.0-9.\n"
return ""
}
function validateAge(field)
{
if(isNaN(field))return "Не введен возраст.\n"
else if(field < 18 || field > 110)
return "Возраст должен быть между 18 и 110.\n"
return ""
}
function validateEmail(field)
{
if(field=="")return "Не введен адрес электронной почты.\n"
else if(!((field.indexOf(".") > 0) && (field.indexOf("@") > 0)) || /[^a-zA-Z0-9.@_-]/.test(field))
return "Электронный адрес имеет неверный формат.\n"
return ""
}
</script>
</body></html>