|| 

无刷新AJAX验证DEDE用户登录

(抄来的,未及验证。)
很多朋友都需要无刷新验证用户名,我现在就把我做的代码给大家发放出来给大家使用与参考。
第一步:首先来看看member目录下的index_do.php文件。
第二步:打开查找
/*
检查用户名是否存在
function ACheckUser();
*/
我们看下面代码。
if($dopost=="checkuser")
{
       $msg = "";
       $userid = trim($userid);
       if($userid==""||!TestStringSafe($userid)){
             $msg = "你的用户名含有非法字符!";
       }else{
         $dsql = new DedeSql(false);
         $dsql->SetQuery("Select ID From #@__member where userid='$userid'");
         $dsql->Execute();
         $rowcount = $dsql->GetTotalRow();
         $dsql->Close();
         if($rowcount>0){ $msg = "  你选择的用户名:[<font color='red'>$userid</font>] ,已经被人使用,请使用其它用户名。"; }
         else{ $msg = "  你选择的用户名:[<font color='red'>$userid</font>] ,可以正常使用,欢迎注册。"; }
 
红色的部分去掉。包括[]符号。或者直接替换我的代码,看个人理解能力来定。
我提供的代码。
if($rowcount>0){ $msg = "<font color='red'>$userid</font><img src=img/reg_error.gif>"; }
else{ $msg = "<font color='red'>$userid</font><img src=img/reg_right.gif>"; }
替换掉这一段
if($rowcount>0){ $msg = "  你选择的用户名:[<font color='red'>$userid</font>] ,已经被人使用,请使用其它用户名。"; }
         else{ $msg = "  你选择的用户名:[<font color='red'>$userid</font>] ,可以正常使用,欢迎注册。"; }
好了大家应该看明白了吧。进行下一步
 
 
 
第四步:我们在打开member\templets目录下的reg_new.htm文件
 
 
 
 
第五步:打开文件后查找
if(document.form2.vdcode.value=="")
{
document.form2.vdcode.focus();
alert("验证码不能为空!");
return false;
}
}
</script>
找到此段代码后这里要注意了不是修改任何文件而是添加代码。
 
第六步:添加代码内容要在     }
}的下方回车然后把代码粘贴进去
 
 
记得千万不要错误 一定要在这段后面添加(红色标记后添加)
return false;
}
}在这位置回车
    就是这里粘贴代码
 
这是代码(蓝色部分)
var http_request = false;
function makeRequest(url, functionName, httpType, sendData) {
 
http_request = false;
if (!httpType) httpType = "GET";
 
if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {
    http_request.overrideMimeType('text/plain');
}
} else if (window.ActiveXObject) {
try {
    http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
    try {
     http_request = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (e) {}
}
}
 
if (!http_request) {
alert('Cannot send an XMLHTTP request');
return false;
}
 
var changefunc="http_request.onreadystatechange = "+functionName;
eval (changefunc);
http_request.open(httpType, url, true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send(sendData);
}
 
function getReturnedText () {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
    document.getElementById("idchecks").innerHTML = http_request.responseText;
}
}
}
function idcheck(){
        var cname = document.getElementById("userid").value;
        makeRequest('index_do.php','getReturnedText','post','userid='+cname+'&fmdo=user&dopost=checkuser')
       
}
 
好了继续下一步
 
第七步:我门继续修改reg_new.htm文件
查找         <tr>
           <td width="17%" height="25" align="right">登陆用户名:</td>
           <td width="83%" height="25"><input name="userid" type="text" id="userid" size="20" style="width:150;height:20">
             * &nbsp;&nbsp; <a href="#" onClick="popUpWindow('index_do.php?userid=' + form2.userid.value+'&fmdo=user&dopost=checkuser',200,200,300,60);">[检查是否已被占用]</a></td>
         </tr>
 
 
 
 
 
 
 
 
替换成(紫色部分)内容
<tr>
           <td width="17%" height="25" align="right">登陆用户名:</td>
           <td width="21%" height="25"><input name="userid" type="text" id="userid" size="20" style="width:150;height:20" class="in" onBlur="idcheck()" />           </td>
           <td width="62%" height="25" align="left" valign="middle" id="idchecks" char>4-16个字符,英文小写、汉字、数字</td>
         </tr>
 
好了 全部完工 上传看看效果吧
 
最后2个图片文件 自己去下载
下载后放到member\img目录下
Trackbacks: 点击获得Trackback地址,Encode: UTF-8  点击获得Trackback地址,Encode: GB2312 or GBK  点击获得Trackback地址,Encode: BIG5
分类:DedeCms
浏览概况:评论:1 | 阅读:7805
 || 
文章评论(1)
[1楼] [引用] [TOP]
MZ123 发表于 2011, December 13, 8:50 PM
yue20000.taobao.com韩版女装
发表评论
用户名:
密码(游客无需):
网址/E-mail:
      记住我的信息