DISCUZ架构:AJAX之ajax.js 函数之三
来源:asp之家 时间:2009-02-14 08:19:00
接下来当然是要分析这个ajax.php是怎么一回事,它做了哪些使function(s)中能返回我们要的东西。由于只分析检查用户名这一个部分,我这里就只分析action=checkuser这一部分了。
elseif($action == 'checkusername') {
$username = trim($username);
$guestexp = '\xA1\xA1|^Guest|^\xD3\xCE\xBF\xCD|\xB9\x43\xAB\xC8';
$censorexp = '/^('.str_replace(array('\\*', "\r\n", ' '), array('.*', '|', ''), preg_quote(($censoruser = trim($censoruser)), '/')).')$/i';
if(preg_match("/^\s*$|^c:\\con\\con$|[%,\*\"\s\t\<\>\&]|$guestexp/is", $username) || ($censoruser && @preg_match($censorexp, $username))) {
showmessage('profile_username_illegal');
}
$query = $db->query("SELECT uid FROM {$tablepre}members WHERE username='$username'");
$username = dhtmlspecialchars(stripslashes($username));
if($db->num_rows($query)) {
showmessage('register_check_found');
}
这里可以看到是标准的php判断了,有点点php基础就能看懂了,基本上的功能就是判断一个用户是不是在后台设置的禁用用户名中。
是的话就showmessage不合法(注:这里的showmessage不是我们理解的那个跳转,而是一个xml文档,为什么会这样我等会会介绍)
然后就从数据库找是不是有这样一个用户,如果是的话就showmessage 发现了已注册的用户名,不是话就都跳过,直接到最后的:
showmessage('succeed');
注意当所有的判断都成功的话就说明合法了,会调用showmessage来显示一个succeed。
最后说一下为什么这里的showmessage不是我们理解的那个跳转了。
注意在register.htm中的ajaxresponse函数有这样一句:
x.get('ajax.php?inajax=1&' + data, function(s){
对了,inajax=1,就是这么一个参数,showmessage就天差万别了。
标签:架构, discuz,ajax,函数
0
投稿
猜你喜欢
Yahoo一统Alexa的时代逐渐结束
2009-02-08 18:01:00
phpcms v9不用下插件自己做留言板
2011-08-13 17:04:11
Google Adsense 广告提示100条
2008-09-11 13:17:00
Win 2000检测系统安全清单(3)
2007-09-20 14:53:00
PR更新搜索引擎送给大家的五一节礼物
2008-04-30 20:45:00
windows2003服务器被ARP挂马事件的安全分析
2010-05-03 13:27:00
做个有技术的站长 将你的创意转化为现实
2009-03-05 13:51:00
快速发现局域网内狂发ARP攻击包的机器
2010-02-21 08:48:00
简单的服务器信息监控软件
2010-08-12 18:51:00
当当网坚持10年终盈利 线上零售帝国模式凸显
2009-11-27 07:18:00
Discuz!7.0道具中心功能详解
2009-02-27 18:30:00
马云对话中小站长:真想赚钱需把钱看轻
2008-01-09 12:44:00
冲浪DDoS(拒绝服务)攻击的趋势与防御
2009-12-08 14:14:00
百度阿拉丁升级 搜索页面实现邮箱登录
2009-10-16 15:39:00
WEB2.0下自由网站设计者未来发展工作趋势
2009-02-10 18:17:00
保持论坛气氛 女站长让小流量地方站成功!
2008-12-10 10:24:00
Windows NT Windows 2000服务器安全配置教程
2010-03-31 18:41:00
免费架设自己的DNS服务器
2009-01-23 17:10:00
微软将与德国政府合作推新型电子身份证系统
2010-03-08 13:50:00
text-justify实现正文文字两端对齐
2009-07-29 19:06:00