<!doctype html>
<html>
<head>
<meta http-equiv="conent-type" content="text/html" charset="utf-8"/>
<style>
.red{
color:red;
}
</style>
</head>
<body>
<?php
function test_input($data){
  $data=trim($data);
  $data=stripslashes($data);
  $data=htmlspecialchars($data);
  return $data;
}
?>
<?php
$name=$email=$web=$comment=$gender="";
$nameerr=$emailerr=$weberr=$commenterr=$gendererr="";
if($_SERVER['REQUEST_METHOD']=="POST"){
  if(empty($_POST['name'])){
    $nameerr="必填名字";
  }else{
    $name=test_input($_POST['name']);
  }
  if(empty($_POST['email'])){
    $emailerr="必填邮件";
  }else{
    $email=test_input($_POST['email']);
  }
  if(empty($_POST['web'])){
    $weberr="必填网址";
  }else{
    $web=test_input($_POST['web']);
  }
  if(empty($_POST['comment'])){
    $commenterr="必填备注";
  }else{
    $comment=test_input($_POST['comment']);
  }
  if(empty($_POST['gender'])){
    $gendererr="必填备注";
  }else{
    $gender=test_input($_POST['gender']);
  }
}
?>
<h1>表单验证</h1>
<span class="red">*必填字段</span>
<form method="POST" action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']);?>">
名字:<input type="text" name="name"/><span class="red"><?php echo "*".$nameerr;?></span>
<br/>
E-mail:<input type="text" name="email"/><span class="red"><?php echo "*".$emailerr;?></span>
<br/>
网址:<input type="text" name="web"/><span class="red"><?php echo "*".$weberr;?></span>
<br/>
备注:<textarea rows="10" cols="40" name="comment"></textarea><span class="red"><?php echo "*".$commenterr;?></span>
<br/>
性别:<input type="radio" name="gender" value="男"/>男<input type="radio" name="gender" value="女"/>女<span class="red"><?php echo "*".$gendererr;?></span>
<br/>
<input type="submit" value="提交验证"/>
</form>
<?php
echo "名字".$name;
echo "<br/>";
echo "E-mail:".$email;
echo "<br/>";
echo "网址:".$web;
echo "<br/>";
echo "备注:".$comment;
echo "<br/>";
echo "性别:".$gender;
echo "<br/>";
?>
</body>
</html>

最新文章

  1. 【.NET深呼吸】基于异步上下文的本地变量(AsyncLocal)
  2. 当攻击者熟读兵法,Camouflage病毒实战演示暗度陈仓之计
  3. PHP header函数使用大全
  4. WebServices(转)
  5. dubbo分布式rpc框架用法
  6. Mysql 导入数据,推荐Source命令,太快了
  7. zoj 3229 Shoot the Bullet(无源汇上下界最大流)
  8. DPM(Deformable Parts Model)--原理(一)(转载)
  9. CSU 1616: Heaps(区间DP)
  10. JQ优化性能
  11. knn分类算法学习
  12. android-studio-bundle-141.2178183首次执行Hello World的时候出现ADB not responding. If you&#39;d like to retry, then please manually kill &quot;adb.e的错误
  13. HashMap 学习笔记
  14. Python内置函数(44)——len
  15. 分享一个爬取HUST(哈理工)学生成绩的Python程序(OCR自动识别验证码)
  16. 记录一个mysql的case when用法
  17. Android反编译和二次打包
  18. C#/JS AES字符串加密和解密
  19. python(44):array和matrix的运算
  20. Locust性能测试2-先登录场景案例

热门文章

  1. $forceUpdate和this.$set(&#39;userInfo&#39;,name,&#39;小红&#39;);
  2. MATLAB批量处理表格类型文件
  3. Servlet-随机生成验证码(初级版本)
  4. 网站整套部署方案-负载均衡配置Nginx+宝塔+云数据库+云WAF
  5. TensorFlow的基础结构
  6. Vue npm run test 错误 (node:16672) UnhandledPromiseRejectionWarning: CssSyntaxError:xxxx.Unknown word
  7. 泛微js附件必填
  8. WDA学习(29):WDA &amp; HTML
  9. input 模糊搜索下拉框
  10. hive知识点总结