在做网页表单时时常需要在页面对表单填写的数据进行验证一番才能提交,我们可以通过自己编写JavasScript代码来验证,但是有时数据量过多时就会有些难度了。
基于jQuery的jquery.validate验证框架帮我们解决了困难,我们可以通过它迅速验证一些常见的输入,并且可以自己扩充自己的验证方法,而且对国际化也有非常好的支持。
关于validate的前台验证这里就不多说了。
有时候我们不仅仅对表单所录入的信息进行验证还需要将录入的值与数据库进行比较,例如判断用户名是否已经被注册,这时我们就需要借助remote方法来实现。
js验证代码:
/**
* Created by Bao on 2016/5/23.
*/
$().ready(function () {
// 在键盘按下并释放及提交后验证提交表单
$("#signupForm").validate({
rules: {
username: {
required: true,
minlength: 3,
remote: {
type: "POST",
url: "check.php?action=remote",
dataType: "json",
//async: false, //使用同步的方式,true为异步方式,默认为异步
data: {
"user": function () {
return $("#username").val();
}
}
}
}
},
messages: {
username: {
required: "请输入用户名",
minlength: "用户名必需由至少3个字母组成",
remote: "该用户名已经被注册!"
}
}
});
});
PHP代码:
<?php
/**
* Created by PhpStorm.
* User: Bao
* Date: 2016/5/18
* Time: 20:35
*/
//session_start();
require_once("db_config.php");
$action = $_GET['action'];
if ($action == 'remote') {
$user = stripslashes(trim($_POST['user']));
$mysqli = new mysqli($mysql_server_name, $mysql_username, $mysql_password, $mysql_database);
//$mysqli->set_charset("utf8");
$sql = "SELECT * FROM member WHERE mID = '$user'";
$result = $mysqli->query($sql);
if($result->num_rows > 0) //应该还有更好的判断方式
{
mysqli_close($mysqli);
echo 'false';
exit();
}
mysqli_close($mysqli);
echo 'true';
exit();
}
- 版权声明:本文基于《知识共享署名-相同方式共享 3.0 中国大陆许可协议》发布,转载请遵循本协议
- 文章链接:http://www.carlstedt.cn/archives/993 (转载时请注明本文出处及文章链接)


发表评论
快来吐槽一下吧!