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- ...
随机推荐
- [Codeforces 876]比赛记录
上场$rating$果然炸飞,但是据说这次只要不$FST$就能翻回来QWQ? T1 $dfs$乱搞? T2 取模乱搞,$STL$ $vector$大法好(%%%$ryf$秒出做法) T3 看了半 ...
- [luoguP1736] 创意吃鱼法(DP)
传送门 f[i][j][0] 表示从右下角到左上角,以(i,j)为起点能延伸的最大值 f[i][j][1] 表示从左下角到右上角,以(i,j)为起点能延伸的最大值 up[i][j] 表示(i,j)上面 ...
- spoj 375 树链剖分模板
/* 只是一道树链刨分的入门题,作为模板用. */ #include<stdio.h> #include<string.h> #include<iostream> ...
- 高数(A)下 第十章
10.1 10.2 10.3 10.4 10.5 10.7 自测题
- 桦仔------分享一下我研究SQLSERVER以来收集的笔记
http://www.cnblogs.com/lyhabc/p/3219117.html
- 一个经典的消费者和生产者的实现(linux )
#include <stdio.h> #include <pthread.h> #define BUFFER_SIZE 16 // 缓冲区数量 struct ...
- 金典 SQL笔记(6)
page223-索引 --利用SQL 语句创建索引 --CREATE INDEX 索引名称on 表名(字段 ,字段, 字段字段n) --索引名称必须为唯一的,字段 ,字段, 同意一个到多个 --范例为 ...
- jQyery 整体架构
jQuery的模块 一.jQuery一共有13个模块: 1. 核心方法 2. 回调模块(callbacks) 3. 数据缓存 4. 异步队列(Deffered) 5. 选择器操做 6. 属性操作 7. ...
- NIO框架之MINA源代码解析(二):mina核心引擎
NIO框架之MINA源代码解析(一):背景 MINA的底层还是利用了jdk提供了nio功能,mina仅仅是对nio进行封装.包含MINA用的线程池都是jdk直接提供的. MINA的server端主要有 ...
- scikit-learn:matplotlib.pyplot经常使用绘图功能总结(1)
參考:http://matplotlib.org/api/pyplot_api.html 绘图功能总结(2):http://blog.csdn.net/mmc2015/article/details/ ...