// 定义变量并默认设置为空值
$nameErr = $emailErr = $genderErr = $websiteErr = "";
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST"){
if (empty($_POST["name"])){
$nameErr = "名字是必需的。";
}else{
$name = test_input($_POST["name"]);
// 检测名字是否只包含字母跟下划线
if (!preg_match("/^[a-zA-Z_]*$/",$name)) {
$nameErr = "只允许字母和下划线";
}
}
if (empty($_POST["email"])){
$emailErr="邮箱是必需的。";
}else{
$email = test_input($_POST["email"]);
if (!preg_match("/[\w\-]+\@[\w\-]+\.[\w\-]+/",$email)){
$emailErr = "非法邮箱格式";
}
}
if (empty($_POST["website"])){
$website = "";
}else{
$website = test_input($_POST["website"]);
if (!preg_match("/\b(?:(?:https?|ftp):\/\/|www\.)[-a-z0-9+&@#\/%?=~_|!:,.;]*[-a-z0-9+&@#\/%=~_|]/i",$website)) {
$websiteErr = "非法的 URL 的地址";
}
}
if (empty($_POST["comment"])){
$comment = "";
}else{
$comment = test_input($_POST["comment"]);
}
if (empty($_POST["gender"])){
$genderErr="性别是必须的。";
}else{
$gender = test_input($_POST["gender"]);
}
}
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
.error
{ text-align:"center";color:red;}
* 必填字段。
">名字:
* <?php echo $nameErr;?>
E-mail:
* <?php echo $emailErr;?>
网址:
备注:
性别:女
男
* <?php echo $genderErr;?>
echo "
您输入的内容是:
";echo $name;
echo "
";
echo $email;
echo "
";
echo $website;
echo "
";
echo $comment;
echo "
";
echo $gender;
?>