做这个登录呢,我用到一个第三方的JqueryUI,这个开源的JueryUI里面有一个对话框dialog,里面的登录层已经封装好了。下面就来说说把实现登录
1.先把第三方的东西拿过来
- <linkhref="../Css/jquery-ui-1.8.2.custom.css"rel="stylesheet"type="text/css"/>
- <scriptsrc="../member/js/jquery-1.7.2.js"type="text/javascript"></script>
- <scriptsrc="../SWFUpload/jquery-ui-1.8.2.custom.min.js"type="text/javascript"></script>
2.把html表单给弄出来
- <body>
- <formid="form1"runat="server">
- <div>
- <div>
- <divid="divLogin"style="display:none">
- <aid="linkUserName"></a><aid="linkLogout"href="void(0)"< /span>>注销</a>
- </div>
- <divid="divNotLogin"style="display:none">
- <ahref="void(0)"< /span>id="linkLogin">登录</a>
- </div>
- <divid="dlgLogin"style="display:none">
- 用户名:<inputtype="text"id="txtLoginUserName"/><br/>
- 密码:<inputtype="password"id="txtLoginPassword"/><br/>
- <divid="divLoginMsg"style="color:Red">
- </div>
- <br/>
- <inputtype="button"id="btnLogin"value="登录"/>
- </div>
- </div>
- </form>
- </body>
|||||现在我们写Jquery代码
- <scripttype="text/javascript">
- $(function(){
- CheckLogin();
- $("#btnLogin").click(function(){
- userLogin();
- location.href="/member/BookShow_UI.aspx";
- });
- $("#linkLogin").click(function(){
- $("#dlgLogin").dialog({
- modal:true,
- buttons:{
- Ok:function(){
- $(this).dialog('close');
- }
- }
- });
- });
- functionuserLogin(){
- varname=$("#txtLoginUserName").val();
- varpwd=$("#txtLoginPassword").val();
- if(name!=""&&pwd!=null){
- $.post("/ashx/Login.ashx",{"action":"login","textName":name,"textPwd":pwd},function(data){
- varstr=data.split(":");
- vars=data.split(":");
- if(s[0]=="0k"){
- $("#divLogin").show();
- $("#linkUserName").text(s[1]);
- $("#dlgLogin").dialog('close');
- $("#divNotLogin").hide();
- $("#dlgLogin").hide();
- }elseif(s[0]=="no"){
- $("#divLogin").hide();
- $("#divNotLogin").show();
- }else{
- alert("错误咯");
- returnfalse;
- }
- });
- }
- };
- functionCheckLogin(){
- $.post("/ashx/Login.ashx",{"action":"check"},function(data){
- vars=data.split(":");
- if(s[0]=="ok"){
- $("#divLogin").show();
- $("#linkUserName").text(s[1]);
- $("#divNotLogin").hide();
- $("#dlgLogin").hide();
- }elseif(s[0]=="no"){
- $("#divLogin").hide();
- $("#divNotLogin").show();
- }else{
- alert("错误咯!!");
- }
- });
- }
- </scirpt>
========================================一般处理程序
在一般处理程序里面要存储用户的信息,Seesion["User"]=user,在一般处理程序里面要存储用户的帐号与密码
到Session里面。在一般处理程序里面必须要实现一个接口 System.Web.SessionSatae.IRequiresSessionState
1.先来接收到前台是选择的是 check检查用户是否登录 login用户以登录
string action=context.Request.Form["action"];//来取到是check还是login
//如果说用户是第一次登录的页面,就要检查此用户是否存在
- if(action=="check"){
- if(context.Session["User"]!=null)
- {
- context.Response.Write("ok:"+(((Model.User)context.Session["User"])).LoginId);
- }else{
- context.Response.Write("no:");
- }
- }elseif(action=="login"){
- stringtextName=context.Request.Form["textName"];
- stringtextPwd=context.Request.Form["textPwd"];
- BLL.UserMangerbll=newBLL.UserManager();
- Model.Usermodel=null;
- stringmsg=string.Empty;
- boolb=bll.GetCheckUserLogin(textName,textPwd,outmsg,outmodel);
- if(b){
- context.Session["User"]=model;
- context.Response.Write("ok:"+model.LoginId);
- }else{
- context.Response.Write("on:");
- }
- }
在一般处理程序里面有一个方法是用来检查用户登录的状态
在bll层里面来定义一个这样的方法GetCheckUserLogin(string name,string pwd,out string msg,out Model.User user)
- publicboolGetCheckUserLogin(stringname,stringpwd,outstringmsgoutModel.Useruser)
- {
- DAL.UserServicesdal=newDAL.UserServices();
- user=dal.GetModel(name);
- if(user!=null)
- {
- if(user.UserState.Name=="正常")
- {
- if(user.LoginPwd=="pwd")
- {
- msg="登录成功";
- returntrue;
- }else{
- msg="用户名或者密码错误";
- returnfalse;
- }
- }else{
- msg="用户没有激活";
- returnfalse;
- }
- }else{
- msg="用户不存在";
- returnfalse;
- }
- }
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|