PHP开发之旅-表单验证
一、创建表单
<form name = "login" method = "post" action="contact.php?action=login" class="bootstrap-frm">
<h1>联系我们</h1>
<label>
<span>微信* :</span>
<input id="wechat" type="text" name="wechat" placeholder="微信" class="form-control input-lg"/>
<p class="panduan" id="umessage1"></p>
</label> <label>
<span>QQ* :</span>
<input id="qq" type="text" name="qq" placeholder="QQ" class="form-control input-lg" />
<p class="panduan" id="umessage2"></p>
</label> <label>
<span>科目 :</span>
<input id="course" type="text" name="course" placeholder="科目" class="form-control input-lg" />
</label> <label>
<span>作业要求 :</span>
<textarea id="work" name="work" placeholder="作业要求" class="form-control input-lg"></textarea>
</label> <label>
<span>联系邮箱* :</span>
<input id="email" type="text" name="email" placeholder="联系邮箱" class="form-control input-lg" />
<p class="panduan" id="umessage3"></p>
</label> <label>
<span>验证码 :</span>
<input id="checkCode" type="text" name="checkCode" placeholder="验证码" class="form-control input-lg" />
<img src="checkcode.php" onclick="this.src='checkcode.php?Math.random()'"/>
<div class="yzmtips" style="color:red"></div>
<p class="panduan" id="umessage4"></p>
</label> <label>
<span> </span>
<input type="submit" class="button" value="Send" />
</label>
<center>
<div>
<img src="data:image/weixingongzonghao.jpeg">
<img src="data:image/qq.jpeg">
</div>
<div>
<span style="margin-right: 25px;">微信:asessay</span>
<span>QQ:1635676033</span>
</div>
</center>
</form>
二、PHP获取表单提交内容并进行判断
if ($_GET['action'] == 'login') {
//开启Session
session_start();
//获取session中的验证码并转为小写
$sessionCode=strtolower($_SESSION['code']);
//获取输入的验证码
$code=strtolower($_POST['checkCode']);
// echo $sessionCode;
$pattern = "/^([0-9A-Za-z\\-_\\.]+)@([0-9a-z]+\\.[a-z]{2,3}(\\.[a-z]{2})?)$/i";
//判断是否相等
if($sessionCode==$code){
if ($_POST['wechat'] == null || $_POST['qq'] == null || $_POST['email'] == null || (!preg_match( $pattern, $_POST['email'] ))) {
echo "<script>alert('提交失败!');</script>";
} else {
// $smtp->sendmail($smtpemailto, $smtpusermail, $mailsubject, $mailbody, $mailtype);
// echo "<script>alert('提交成功!');</script>";
// }
$smtp->sendmail($smtpemailto, $smtpusermail, $mailsubject, $mailbody, $mailtype);
echo "<script type='text/javascript'>alert('提交成功!');</script>";
}
}else{
echo "<script type='text/javascript'>alert('验证码错误!');</script>";
}
}
三、js控制表单验证
<script type="text/javascript">
var error=new Array();
var regex = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/;
$(document).ready(function(){
$('input[name="wechat"]').blur(function(){
var wechat=$(this).val();
if(wechat==''){
var wechat = "您输入的微信号为空!";
$('#umessage1').text(wechat);
}else{
$('#umessage1').text('');
}
});
$('input[name="qq"]').blur(function(){
var qq=$(this).val();
if(qq==''){
var qq = "您输入的QQ号码为空!";
$('#umessage2').text(qq);
}else{
$('#umessage2').text('');
}
});
$('input[name="email"]').blur(function(){
var email=$(this).val();
if(email=='' || !(regex.test(email))){
var email = "您输入的电子邮件地址不合法!";
$('#umessage3').text(email);
}else{
$('#umessage3').text('');
}
});
$('input[name="checkCode"]').blur(function(){
var checkCode=$(this).val();
if(checkCode==''){
var checkCode = "您输入的验证码为空!";
$('#umessage4').text(checkCode);
}else{
$('#umessage4').text('');
}
});
});
</script>
PHP开发之旅-表单验证的更多相关文章
- 吴裕雄--天生自然 PHP开发学习:表单 - 验证邮件和URL
$name = test_input($_POST["name"]); if (!preg_match("/^[a-zA-Z ]*$/",$name)) { $ ...
- 吴裕雄--天生自然 PHP开发学习:表单验证
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title> ...
- 吴裕雄--天生自然 JAVASCRIPT开发学习: 表单验证
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 使用 纯JQuery 进行 表单 验证
对于JavaScript而言,进行表单数据的验证可谓是很有必要的,而且一般我们都会在网页上先进行一下表单验证,然后服务器端再次进行验证,来确保用户提交数据的准确性.下面就来分享一个JQuery实现的表 ...
- 微信小程序——仿jqueryValidate表单验证插件WxValidate的二次封装(一)
在做web开发时,表单验证插件我们前端用的是jqueryValidate,由于个人主要精力是在后台JAVA开发上,为了让插件与后台更好的结合和使用,通过JAVA的自定义组件将表单全部重新写了一边,同时 ...
- Web开发-表单验证
表单验证是Web开发中必不可少的一个环节,用来限制用户输入数据的规范和一致性.那么如何能够简化这一任务,让开发人员通过简单的属性设置就能达到目的呢? FineUI在这一点上也是下足了功夫,比Asp.N ...
- 前端编程提高之旅(十)----表单验证插件与cookie插件
实际项目开发中与用户交互的常见手法就是採用表单的形式.取得用户注冊.登录等信息.而当用户注冊或登录后又须要记住用户的登录状态.这就涉及到经常使用的两个操作:表单验证与cookie增删查找. ...
- python运维开发(十九)----Django后台表单验证、session、cookie、model操作
内容目录: Django后台表单验证 CSRF加密传输 session.cookie model数据库操作 Django后台Form表单验证 Django中Form一般有2种功能: 1.用于做用户提交 ...
- SPA项目开发--表单验证、增删改
1. 表单验证 Form组件提供了表单验证的功能,只需要通过 rules 属性传入约定的验证规则, 并将Form-Item的prop属性设置为需校验的字段名即可 <el-form- ...
随机推荐
- 最接近的点配对(分治问题理解) && HDU 1007代码
题目大意: 给定一堆点集,在这一堆点集中找到一组点集它们之间的距离达到最短 对于HDU1007因为求圆的半径,所以距离还要除以2 普通情况下,可以将nge点,将任意两个点之间的距离都算一遍,在循环过程 ...
- - > 最大公约数(辗转相除法)和最小公倍数(公式法)
最大公约数 #include<iostream> using namespace std; int a,b; int gcd(int x,int y){ return x==0?y:gcd ...
- PHP与WCF第一次亲密接触
接触PHP第二天,要求PHP访问WCF服务 着实痛苦,无从下手啊. 在网上查了很多资料知道PHP访问WCF很方便 <?php $client = new SoapClient ( 'http:/ ...
- 非常适合新手的jq/zepto源码分析06 -- 事件模型
复习下事件的有关内容: 1.现在用的绑定/删除: obj.addEventListener(type,fn,false) obj.removeEventListener(type) obj.attac ...
- what happens if we dont resolve or reject the promise
https://stackoverflow.com/questions/36734900/what-happens-if-we-dont-resolve-or-reject-the-promise I ...
- CentOS和Window互相远程桌面方法
1)VNC服务器配置 (CentOS 5.x安装GNOME桌面环境) # yum groupinstall "GNOME Desktop Environment(CentOS 6.x安装G ...
- android 请求网络异步载入
/** * 封装ProecssDialog对话框 * */ public class LoadDialog extends ProgressDialog { private String title ...
- 查看及更改MySQL数据库物理文件存放的位置
查看命令: mysql> show global variables like "%datadir%"; 表格第二行即为文件的位置.另外,可以在该文件夹的配置文件my.i ...
- 练习使用Trim()函数规范名字输入
Java中的Trim()函数能够去除字符串的空白前缀和空白后缀,可用来规范用户输入的内容,详细这样用: String s=" Hello world ".trim(); 然后 ...
- ZOJ 3209 Treasure Map (Dancing Links 精确覆盖 )
题意 : 给你一个大小为 n * m 的矩形 , 坐标是( 0 , 0 ) ~ ( n , m ) .然后给你 p 个小矩形 . 坐标是( x1 , y1 ) ~ ( x2 , y2 ) , 你选 ...