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- ...
随机推荐
- Android BottomSheet:便捷易用的底部滑出面板(1)
Android BottomSheet:便捷易用的底部滑出面板(1) Android BottomSheet是github上的一个第三方开源项目,其主页:https://github.com/Flip ...
- C#中的定制特性(Attributes)
C#中的定制特性(Attributes) 介绍 Attributes是一种新的描述信息,我们既可以使用attributes来定义设计期信息(例如:帮助文件.文档的URL),还可能用attributes ...
- Hero HDU4310 贪心
When playing DotA with god-like rivals and pig-like team members, you have to face an embarrassing s ...
- MYSQL中插入数据以及修改数据的部分方法
#插入/增加:使用INSERT #修改:使用ALTER #修改数据类型ALTER TABLE table02 MODIFY COLUMN cname VARCHAR(100);ALTER TABLE ...
- vijos 1439 区间
区间 背景 描述 给定n个闭区间 [ai,bi], i=1,2,...,n. 这些区间的和可以用两两不相交的闭区间的和来表示.你的任务是找到这样的区间数目最少的表示,且把它们按升序的方式写到输出文件中 ...
- WINDOW 专家
http://www.cnblogs.com/shanyou/category/725986.html
- 配置 Profile Manager(2)
五.配置登录用户 点开"账户->用户"页面,创建1个管理员: 创建 1 个普通用户: 六.启用 MDM 选择"服务->描写叙述文件管理器".将 sw ...
- zoj 1880 - Tug of War
题目:有n个人分成两组,两组人数差不能超过1,找到两组的人重量之差的最小值. 分析:dp,二维01背包. 由于必须放在两个组中的一组,直接背包全部可到状态, 取出相差不超过 1的最接近 sum/2的值 ...
- swift 2.0 语法 分支
import UIKit // 注意: Swift中可以不写;号, 但是有一定的前提条件, 一行只有一句代码 // 如果一行有多句代码, 那么;还是必须写 // 注意: Swift变态的地方 ...
- 可设置指定时间自己主动消失的 MessageBox实现
本文主要是讲怎样实现可设置指定时间自己主动消失的 MessageBox提示框ShowMessageBoxTimeout实现: 在开发client应用程序的时候.经经常使用得WinForm中Messag ...