<form id="form1" name="form1" method="post" action="">
<label>name
<input name="name" type="text" id="name" />
</label>
<p>
<label>birthday
<input name="birthday" type="text" id="birthday" />
</label>
</p>
<p>
<label>email
<input name="email" type="text" id="email" />
</label>
</p>
<p>
<label>
<input type="submit" name="Submit" value="submit" />
</label>
</p>
</form>
<?php
//这个函数主要用来检查提交的表单数据是否有错(validate)
//实际应用上用户输入数据的检验(validate)及过滤(filter)都涉到程序安全性,非常重要,必不可少
//在写实际应用时不会把$_POST直接放在函数里,这里是一个姑息的解决方法,希望大家能改正
if( $_POST )
{
form_error();
}
function form_error() {
$_POST['name'] = trim(strip_tags($_POST['name'])); //这个实际上是Filter
$len_name = strlen($_POST['name']);
if($len_name > 30 || $len_name < 2) {
$msg = '姓名长度必须大于2小于30<br />';
}
$date = explode('-', $_POST['birthday']);
if(sizeof($date) != 3) {
$msg .= '日期格式错误<br />';
} else {
if(!checkdate($date[1], $date[2], $date[0])) {
$msg .= '日期不正确<br />';
}
}
if(!eregi("^[a-z'0-9]+([._-][a-z'0-9]+)*@([a-z0-9]+([._-][a-z0-9]+))+$", $_POST['email'])) {
$msg .= '邮箱格式错误';
}
return $msg;
}
?>