我的表单HTML
<p><span>Enter Name: </span><input type="text" name="Name" size="20"></p>
<p><span>Enter Email: </span><input type="text" name="Email" size="20"></p>
<p> Enter DOB: <input type="text" name="Dob" size="20"></p>
<p ><span><input type="submit" value="Save Data" name="Submit"></span></p>
我的PHP表单
if(isset($_POST['Name']) && isset($_POST['Email']) && isset($_POST['Dob'])) {
$data = $_POST['Name'] . '-' . $_POST['Email'] . '-' . $_POST['Dob'] . "\n";
$ret = file_put_contents('mydata.txt', $data, FILE_APPEND | LOCK_EX);
if($ret === false) {
die('There was an error writing this file');
}
else {
echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}
$location = "success.html";
header( "Location: $location" );
表单工作正常,但我要验证: 名称只是字母表 电子邮件格式正确@ ect DOB是数字
感谢所有可以提供帮助的人
答案 0 :(得分:0)
您的验证可以分两步完成:
在提交表单之前验证UI中的内容。 这个工作人员不是很安全,但可以通过使用javascript定义规则来避免太多用户输入错误。
POST到达php时验证的帖子内容。 使用此功能
function email($email){
/*
* Checks mail by preg_match
*/
if(!preg_match('/^[_A-z0-9-]+((\.|\+)[_A-z0-9-]+)*@[A-z0-9-]+(\.[A-z0-9-]+)*(\.[A-z]{2,4})$/',$email)){
return false;
} else {
return true;
}
}