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
  • asp之家 网站运营 m.aspxhome.com