渗透测试入门学习——php表单form与POST、GET请求练习

最终效果:
必填项为空报错提示:
代码:
php 复制代码
<!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>
相关推荐
Pure_White_Sword11 分钟前
Bugku-web题目-xxx二手交易市场
web安全·网络安全·ctf
饮长安千年月34 分钟前
玄机-第八章 内存马分析-java03-fastjson
开发语言·python·安全·web安全·网络安全·应急响应
侯小啾1 小时前
Ubuntu NAT模式设置静态 IP 地址
tcp/ip·ubuntu·php·静态ip
py有趣1 小时前
LeetCode算法学习之鸡蛋掉落
学习·算法·leetcode
小马爱打代码1 小时前
RabbitMQ:系统学习笔记
笔记·学习·rabbitmq
YJlio1 小时前
进程和诊断工具速查手册(8.13):VMMap / DebugView / LiveKd / Handle / ListDLLs 一页式现场排障清单
数据库·笔记·学习
馨谙2 小时前
RHEL 存储堆栈完全解析:从硬件到应用的存储管理指南
服务器·开发语言·php
冰糖拌麻子2 小时前
Metasploitable2靶场全部漏洞超详细讲解(含Metasploitable2靶场下载)
网络·安全·网络安全·系统安全·网络攻击模型
李纲明3 小时前
Wordpress如何选择适合外贸的模板主题?
微信小程序·php
中科固源3 小时前
Wisdom Lens:开启物联网固件模糊测试新时代
物联网·网络安全