最终效果:
必填项为空报错提示:
代码:
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>php表单练习</title>
</head>
<body>
<?php//php中的htmlspecialchars()可以将用户输入的 "<" ">" 等与html解析有关的特殊字符转换为字符处理//可以从一定程度上防止XSS$name = htmlspecialchars($_REQUEST['name']);$email = htmlspecialchars($_REQUEST['email']);$hobby = $_REQUEST['hobby'];$note = htmlspecialchars($_REQUEST['note']);$gender = htmlspecialchars($_REQUEST['gender']);if ($_SERVER["REQUEST_METHOD"] == "POST") {//只接收处理POST请求if (empty($name)){//校验并提示报错信息$namErr = "姓名不能为空";} if (empty($email)){$emailErr = "邮箱不能为空";} if (empty($gender)){$genderErr = "性别不能为空";}
}
?>
<!-- 表单 -->
<form action="#" method="post">名字(*必填):<input type="text" name="name"> <?php echo $namErr; ?><br><!-- 错误提示的输出 -->邮件(*必填):<input type="text" name="email"> <?php echo $emailErr; ?><br>爱好:<input type="checkbox" name="hobby[]" value="绘画">绘画<input type="checkbox" name="hobby[]" value="音游">音游<input type="checkbox" name="hobby[]" value="FPS">FPS<input type="checkbox" name="hobby[]" value="MMORPG">MMORPG<input type="checkbox" name="hobby[]" value="学习">学习<br>性别(*必填):<input type="radio" name="gender" value="男">男<input type="radio" name="gender" value="女">女 <?php echo $genderErr; ?><br><br>备注:<textarea name="note"></textarea><br><input type="submit" value="提交">
</form><?php//打印输出提交的表单信息echo "姓名是:",$name,'<br>';echo "邮箱是:",$email,'<br>';echo "爱好是:";if (!(empty($hobby))){foreach($hobby as $ah){echo htmlspecialchars($ah)," ";}}echo '<br>';echo "性别是:",$gender,'<br>';echo "备注是:",$note,'<br>';
?>
</body>
</html>