コード例 #1
0
        public static En_User Login(string worknum)//验证学号是否已注册,若已注册,返回En_User对象
        {
            string    sql       = "select * from [user] where uNum='" + worknum + "'";
            DataTable userTable = helper.ExcuteDataTable(constr, CommandType.Text, sql);

            if (userTable.Rows.Count == 1)
            {
                En_User  eu   = new En_User();
                object[] item = userTable.Rows[0].ItemArray;
                eu.UID          = new Guid(item[0].ToString());
                eu.UNum         = item[1].ToString();
                eu.UName        = item[2].ToString();
                eu.UPwd         = item[3].ToString();
                eu.UMail        = item[4].ToString();
                eu.UGrade       = item[5] == System.DBNull.Value ? 0 : Int32.Parse(item[5].ToString());
                eu.USex         = item[6] == System.DBNull.Value ? 2 : Int32.Parse(item[6].ToString());
                eu.UTel         = item[7].ToString();
                eu.UPic         = item[8].ToString();
                eu.UIP          = item[9].ToString();
                eu.RegisterTime = (DateTime)item[10];
                eu.TrueName     = item[11].ToString();
                eu.State        = Int32.Parse(item[12].ToString());
                eu.LastLogin    = (DateTime)item[13];
                return(eu);
            }
            else
            {
                return(null);
            }
        }
コード例 #2
0
        public bool deletedata(En_User en)
        {
            string query = string.Format("DELETE FROM [User] WHERE TaiKhoan=@TaiKhoan");

            SqlParameter[] sqlPara = new SqlParameter[1];
            sqlPara[0] = new SqlParameter("@TaiKhoan", en.TaiKhoan);
            return(cnn.executeDeleteQuery(query, sqlPara));
        }
コード例 #3
0
        public bool updatedata(En_User en)
        {
            string query = string.Format("UPDATE [User] SET HoTen = @HoTen, Pass_Word = @Pass_Word, Quyen = @Quyen, TrangThai = @TrangThai, NgayCapNhat = @NgayCapNhat WHERE TaiKhoan = @TaiKhoan");

            SqlParameter[] sqlPara = new SqlParameter[6];
            sqlPara[0] = new SqlParameter("@HoTen", en.HoTen);
            sqlPara[1] = new SqlParameter("@Pass_Word", en.Pass_Word);
            sqlPara[2] = new SqlParameter("@Quyen", en.Quyen);
            sqlPara[3] = new SqlParameter("@TrangThai", en.TrangThai);
            sqlPara[4] = new SqlParameter("@NgayCapNhat", en.NgayCapNhat);
            sqlPara[5] = new SqlParameter("@TaiKhoan", en.TaiKhoan);
            return(cnn.executeUpdateQuery(query, sqlPara));
        }
コード例 #4
0
        public bool insertdata(En_User en)
        {
            string query = string.Format("INSERT INTO [User](HoTen, TaiKhoan, Pass_Word, Quyen, TrangThai, NgayTao, NgayCapNhat) VALUES(@HoTen, @TaiKhoan, @Pass_Word, @Quyen, @TrangThai, @NgayTao, @NgayCapNhat)");

            SqlParameter[] sqlPara = new SqlParameter[7];
            sqlPara[0] = new SqlParameter("@HoTen", en.HoTen);
            sqlPara[1] = new SqlParameter("@TaiKhoan", en.TaiKhoan);
            sqlPara[2] = new SqlParameter("@Pass_Word", en.Pass_Word);
            sqlPara[3] = new SqlParameter("@Quyen", en.Quyen);
            sqlPara[4] = new SqlParameter("@TrangThai", en.TrangThai);
            sqlPara[5] = new SqlParameter("@NgayTao", en.NgayTao);
            sqlPara[6] = new SqlParameter("@NgayCapNhat", en.NgayCapNhat);
            return(cnn.executeInsertQuery(query, sqlPara));
        }
コード例 #5
0
        public static En_User Login(string userInfo, string password)//登录判断,若成功,返回En_User对象
        {
            string regMail = @"^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$";
            string sql     = "";


            if (System.Text.RegularExpressions.Regex.IsMatch(userInfo, regMail))//如果输入的是邮箱
            {
                sql = "select * from [user] where uMail=? and uPwd=?";
            }
            else//如果输入的是昵称
            {
                sql = "select * from [user] where uName=? and uPwd=?";
            }
            OleDbParameter[] param = new OleDbParameter[] {
                new OleDbParameter("@pUserInfo", userInfo),
                new OleDbParameter("@pPwd", password)
            };


            DataTable userTable = helper.ExcuteDataTable(constr, CommandType.Text, sql, param);



            if (userTable.Rows.Count == 1)
            {
                En_User  eu   = new En_User();
                object[] item = userTable.Rows[0].ItemArray;
                eu.UID          = new Guid(item[0].ToString());
                eu.UNum         = item[1].ToString();
                eu.UName        = item[2].ToString();
                eu.UPwd         = item[3].ToString();
                eu.UMail        = item[4].ToString();
                eu.UGrade       = item[5] == System.DBNull.Value ? 0 : Int32.Parse(item[5].ToString());
                eu.USex         = item[6] == System.DBNull.Value ? 2 : Int32.Parse(item[6].ToString());
                eu.UTel         = item[7].ToString();
                eu.UPic         = item[8].ToString();
                eu.UIP          = item[9].ToString();
                eu.RegisterTime = (DateTime)item[10];
                eu.TrueName     = item[11].ToString();
                eu.State        = Int32.Parse(item[12].ToString());
                eu.LastLogin    = (DateTime)item[13];
                return(eu);
            }
            else
            {
                return(null);
            }
        }
コード例 #6
0
 public static int IsBlankAdd(En_User eu)//完善信息字符串判断
 {
     if (eu.UTel.Equals("") || eu.UTel.Length > 50)
     {
         return(1);//电话长度不符
     }
     else if (eu.TrueName.Equals("") || eu.TrueName.Length > 20)
     {
         return(2);//trueName长度不符
     }
     else
     {
         return(3);
     }
 }
コード例 #7
0
        public static bool InsertUser(En_User user)//注册
        {
            string sql   = @"INSERT INTO [ghyusers].[dbo].[user]([uNum],[uName],
                [uPwd],[uMail],[uIP],[registerTime],[lastLogin],[state])
                VALUES (?, ?, ?, ?, ?, ?, ?, ?)";
            var    param = new OleDbParameter[] {
                new OleDbParameter("@pNum", user.UNum),
                new OleDbParameter("@pName", user.UName),
                new OleDbParameter("@pPwd", user.UPwd),
                new OleDbParameter("@pMail", user.UMail),
                new OleDbParameter("@pUIP", user.UIP),
                new OleDbParameter("@pRegistertime", user.RegisterTime.ToString("yyyy-MM-dd HH:mm:ss")),
                new OleDbParameter("@pLastLogin", user.LastLogin.ToString("yyyy-MM-dd HH:mm:ss")),
                new OleDbParameter("@pState", user.State)
            };

            return(helper.ExecuteNonQuery(constr, CommandType.Text, sql, param) > 0 ? true : false);
        }
コード例 #8
0
        protected void Log(object sender, EventArgs e)
        {
            En_User user = BADL_User.Login(RegularExpressions.MyEncodeInputString(uInfo.Value.Trim()), Md5.MD5_encrypt(RegularExpressions.MyEncodeInputString(uPwd.Value.Trim())));

            if (user != null)
            {
                Session["User"] = user;                                 //将user写入session

                if (!BADL_User.ChangeLogInfor(user.UNum, DateTime.Now)) //更新登录时间异常
                {
                    Response.Write("<script>alert('更新登录时间异常,登录失败')</script>");
                }
                else
                {
                    HttpCookie cookieUserName = new HttpCookie("UserName");//将用户名写入cookie
                    cookieUserName.Value   = user.UName;
                    cookieUserName.Expires = System.DateTime.Now.AddDays(1);
                    Response.Cookies.Add(cookieUserName);

                    string userRole = BADL_User.GetUserRole(user.UNum);     //得到用户的角色
                    Session["UserRole"] = userRole;                         //将userRole写入session,一般用户的role为"0"
                    HttpCookie cookieUserRole = new HttpCookie("UserRole"); //将userRole写入cookie
                    cookieUserRole.Value   = userRole;
                    cookieUserRole.Expires = System.DateTime.Now.AddDays(1);
                    Response.Cookies.Add(cookieUserRole);


                    if (savePwd.Checked)//如果用户记住密码,将学号和登录密码写入cookie
                    {
                        HttpCookie cookieUser = new HttpCookie("UserLog");
                        cookieUser.Value   = user.UNum + "+" + Md5.MD5_encrypt(uPwd.Value);
                        cookieUser.Expires = System.DateTime.Now.AddDays(1);
                        Response.Cookies.Add(cookieUser);
                    }
                    Response.Redirect("index.aspx");
                }
            }
            else
            {
                Response.Write("<script>alert('登录失败,用户名或密码不正确')</script>");
            }
        }
コード例 #9
0
 public static int IsBlankReg(En_User eu)//注册字符串长度判断
 {
     if (eu.UNum.Equals("") || eu.UNum.Length > 20)
     {
         return(1);//学号长度不符
     }
     else if (eu.UName.Equals("") || eu.UName.Length > 20)
     {
         return(2);//昵称长度不符
     }
     else if (eu.UPwd.Equals("") || eu.UPwd.Length > 50)
     {
         return(3);//密码长度不符
     }
     else if (eu.UMail.Equals("") || eu.UMail.Length > 50)
     {
         return(4);//邮箱长度不符
     }
     else
     {
         return(5);
     }
 }
コード例 #10
0
        protected void uRegister(object sender, EventArgs e)
        {
            string unum    = RegularExpressions.MyEncodeInputString(uNum.Value.Trim());
            string unumpwd = RegularExpressions.MyEncodeInputString(uNumPwd.Value.Trim());
            string uname   = RegularExpressions.MyEncodeInputString(uName.Value.Trim());
            string upwd    = RegularExpressions.MyEncodeInputString(pwd.Value.Trim());
            string upwd1   = RegularExpressions.MyEncodeInputString(pwd1.Value.Trim());
            string umail   = RegularExpressions.MyEncodeInputString(uMail.Value.Trim());
            string ucheck  = RegularExpressions.MyEncodeInputString(uCheck.Value.Trim());
            string check   = HttpContext.Current.Session["check"].ToString();

            if (HttpContext.Current.Session["check"] == null)//判断验证码
            {
                Response.Write("<script>alert('验证码生成错误')</script>");
            }
            else if (!CheckNum.CheckUserNum(unum, unumpwd))
            {
                Response.Write("<script>alert('学号或上网密码错误')</script>");
            }
            else if (!upwd.Equals(upwd1))
            {
                Response.Write("<script>alert('密码不一致')</script>");
            }
            else if (!check.ToUpper().Equals(ucheck.ToUpper()))
            {
                Response.Write("<script>alert('验证码输入错误')</script>");
            }
            else
            {
                En_User eu = new En_User();
                eu.UNum         = unum;
                eu.UName        = uname;
                eu.UPwd         = Md5.MD5_encrypt(upwd1);
                eu.UMail        = umail;
                eu.RegisterTime = DateTime.Now;
                eu.LastLogin    = DateTime.Now;
                eu.State        = 0;

                int blank = BADL_User.IsBlankReg(eu);//判断字段长度
                if (blank != 5)
                {
                    Response.Write("<script>alert('字段长度不符')</script>");
                }
                else if (BADL_User.IsStunumExsit(unum))
                {
                    Response.Write("<script>alert('学号存在')</script>");
                }
                else if (BADL_User.IsNameExsit(uname))
                {
                    Response.Write("<script>alert('昵称存在')</script>");
                }
                else if (BADL_User.InsertUser(eu))
                {
                    Response.Redirect("login.aspx");//注册成功,跳转到登录界面
                }
                else
                {
                    Response.Write("<script>alert('注册异常')</script>");
                }
            }
        }
コード例 #11
0
 public void deletedata(En_User en)
 {
     dal.deletedata(en);
 }
コード例 #12
0
 public void updatedata(En_User en)
 {
     dal.updatedata(en);
 }
コード例 #13
0
 public void insertdata(En_User en)
 {
     dal.insertdata(en);
 }