php之form表单
<!DOCTYPE HTML>
<html>
<head>
<title>form</title>
<style type="text/css">
.err{
color: red;
}
</style>
</head>
<body>
<?php
$name = $email = $website = $commet = $gender = $nameErr = $emailErr = $genderErr = '';
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['gender'])){
$genderErr = "性别为必选项";
}else{
$gender = test_input($_POST['gender']);
} $website = empty($_POST['website'])?'':test_input($_POST['website']);
$commet = empty($_POST['commet'])?'':test_input($_POST['commet']);
} function test_input($str){
$str = trim($str);
$str = stripslashes($str);
$str = htmlspecialchars($str);
return $str;
}
?>
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="post">
<p>姓名:<input type="text" name="name" value="<?php echo $name;?>"/><span class="err">* <?php echo $nameErr; ?> </span></p>
<p>邮件:<input type="text" name="email" value="<?php echo $email;?>" /><span class="err">* <?php echo $emailErr; ?></span></p>
<p>网址:<input type="text" name="website" value="<?php echo $website;?>"/></p>
<p>评论:<textarea name="commet" id="" cols="30" rows="10"><?php echo $commet;?></textarea></p>
<p>性别
<label><input type="radio" name="gender" value="female" <?php if(isset($gender) && $gender=="female") echo 'checked'; ?>/>女性</label>
<label><input type="radio" name="gender" value="male" <?php if(isset($gender) && $gender == 'male') echo 'checked'?>/>男性</label>
<span class="err">* <?php echo $genderErr; ?></span>
</p>
<button>提交</button>
</form>
<hr />
<?php echo $name;?>
<br />
<?php echo $email;?>
<br />
<?php echo $website;?>
<br />
<?php echo $commet;?>
<br />
<?php echo $gender;?>
</body>
</html>
<?php ?>
php之form表单的更多相关文章
- form表单验证-Javascript
Form表单验证: js基础考试内容,form表单验证,正则表达式,blur事件,自动获取数组,以及css布局样式,动态清除等.完整代码如下: <!DOCTYPE html PUBLIC &qu ...
- Form 表单提交参数
今天因为要额外提交参数数组性的参数给form传到后台而苦恼了半天,结果发现,只需要在form表单对应的字段html空间中定义name = 后台参数名 的属性就ok了. 后台本来是只有模型参数的,但是后 ...
- form表单 ----在路上(15)
form 表单就是将用户的信息提交到服务器,服务器会将信息存储活着根据信息查询数据进行增删改查,再将其返回给用户. 基本格式: <form action="" method ...
- form表单的字符串进行utf-8编码
<form>表单有assept-charset属性.该属性规定字符的编码方式,默认是"unknown",与文档的字符集相同. 该属性除了Internet explore ...
- 细说 Form (表单)
细说 Form (表单) Form(表单)对于每个WEB开发人员来说,应该是再熟悉不过的东西了,可它却是页面与WEB服务器交互过程中最重要的信息来源. 虽然Asp.net WebForms框架为了帮助 ...
- 通过form表单的形式下载文件。
在项目中遇到问题,要求动态拼接uri下载文件.但是由于项目的安全拦截导致window.location.href 和 window.open等新建窗口的方法都不行. 无意间百度到了通过form表单来下 ...
- form 表单跨域提交
<!DOCTYPE html><html> <head> <title>form 表单上传文件</title> <script src ...
- form表单的属性标签
form表单的常用标签 表单: <form id="" name="" method="post/get" action=" ...
- form表单的属性标签和练习
form表单的标签 做一个如下图的form表单: 我们的代码如下: <body leftmargin="400px" topmargin="200px"& ...
- Django基础,Day5 - form表单投票详解
投票URL polls/urls.py: # ex: /polls/5/vote/ url(r'^(?P<question_id>[0-9]+)/vote/$', views.vote, ...
随机推荐
- HDU-4003 Find Metal Mineral (树形DP+分组背包)
题目大意:用m个机器人去遍历有n个节点的有根树,边权代表一个机器人通过这条边的代价,求最小代价. 题目分析:定义状态dp(root,k)表示最终遍历完成后以root为根节点的子树中有k个机器人时产生的 ...
- 状态压缩dp 入门
1.有一张n*m (n<=m)的棋盘,在上面放n个中国象棋里的车,使得任意两个车不能相互攻击,总共有多少种不同的方案. 2.有一张n*m (n<=m)的棋盘,其中有些格子里面不能放,在上面 ...
- CentOS如何挂载硬盘
远程SSH登录上CentOS服务器后,进行如下操作 提醒:挂载操作会清空数据,请确认挂载盘无数据或者未使用 第一步:列出所有磁盘 命令: ll /dev/disk/by-path 提示:如果无法确 ...
- sed的实际用法举例
sed:Stream Editor文本流编辑,sed是一个“非交互式的”面向字符流的编辑器.能同时处理多个文件多行的内容,可以不对原文件改动,把整个文件输入到屏幕,可以把只匹配到模式的内容输入到屏幕上 ...
- 【转】ASP.NET Cookies简单应用 记住用户名和密码
不要试图给Password类型的TextBox赋值! 在asp.net中,不要试图给Password类型的TextBox控件赋值! 无论是在设计或是运行时,都不可以的. 猜测的原因是,password ...
- [NOIp 1998 提高组]Probelm 2 连接多位数【2011百度实习生笔试题】
/*====================================================================== [NOIp 1998 提高组]Probelm 2 连接 ...
- hadoop-2.7.0
65 cd /home/guyumei/下载/ 66 ll 67 cd .. 68 ll 69 cd .. 70 ll 71 cd guyumei/ 72 ll 73 cd hadoop-2.7.0/ ...
- Oracle的rownum原理和使用
整理和学习了一下网上高手关于rownum的帖子: 参考资料: http://tech.ddvip.com/2008-10/122490439383296.html 和 http://tenn.jav ...
- Review Board——在线代码审查工具
代码审查(Code Review)不但可以提高质量,而且还是一个知识共享和指导的极好的手段.不幸的是,准备工作的辛苦和工具支持的缺乏让代码审查很容易被延至“稍后再议”.Review Board的目标便 ...
- Android SingleTask与SingleInstance的区别
Android SingleTask与SingleInstance的区别 原文地址 现有2个项目,taskA.taskB.taskA负责调用taskB中指定的界面. taskB中有3个界面,a.b.c ...