这个jquery应用程序如何验证用户名? (第三方脚本) [英] how is this jquery app validating the username? (3rd party script)
问题描述
我要弄清楚的教程是这样的:
http://www .position-absolute.com/articles/jquery-form-validator-因为表单验证-is-a-mess/
The tutorial that I'm trying to figure out is this:
http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/
username
字段如下所示:
<input value="" class="validate[required,custom[noSpecialCaracters],length[0,20],ajax[ajaxUser]]" type="text" name="user" id="user" />
该<input>
字段具有一个名为ajax[ajaxUser]
的类项目,该类项目的规则包含在此脚本(jquery.validationEngine-en.js
)中.
That <input>
field has a class item named ajax[ajaxUser]
which has its rules contained in this script (jquery.validationEngine-en.js
).
该项目的代码段如下所示:
The snippet for that item looks like this:
"ajaxUser":{
"file":"validateUser.php",
"extraData":"name=eric",
"alertTextOk":"* This user is available",
"alertTextLoad":"* Loading, please wait",
"alertText":"* This user is already taken"},
我根本无法弄清的是validateUser.php
的PHP页面是如何工作的.这些帖子字段都来自哪里?我环顾四周,找不到具有这些名称的字段.
What I can't figure out at all is how its PHP page is working which is validateUser.php
. Where are all those post fields coming from? I looked around and can't find a field with those names.
谢谢
推荐答案
发布数据如下:
validateValue=karnius&validateId=user&validateError=ajaxUser
似乎validateId
是表单元素名称,而validateError
来自ajax[ajaxUser]
.
It appears that validateId
is the form element name and validateError
comes from ajax[ajaxUser]
.
响应如下:
{"jsonValidateReturn":["user","ajaxUser","true"]}
PHP代码可能如下所示:
The PHP code could look something like this:
<?php
$result = mysql_query('SELECT 1 FROM users WHERE username = "'.mysql_real_escape_string($_POST['validateValue']).'"');
$response = $result ? 'false' : 'true';
echo json_encode(array('jsonValidateReturn' => array(
$_POST['validateId'],
$_POST['validateError'],
$response)));
?>
(显然,更复杂的处理程序可以将其行为基于validateId
和validateError
.)
(Obviously, a more complicated handler could base its behavior on validateId
and validateError
.)
这篇关于这个jquery应用程序如何验证用户名? (第三方脚本)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!