private string Register() { ADeeWu.HuoBi3J.DAL.Users dal = new ADeeWu.HuoBi3J.DAL.Users(); DataBase db = DataBase.Create(); var username = WebUtility.GetRequestStr("username", ""); var password = WebUtility.GetRequestStr("password", ""); var validCode = WebUtility.GetRequestStr("ValidCode", ""); if (string.IsNullOrWhiteSpace(username)) { return JsonConvert.SerializeObject(new { statue = false, msg = "用户名不能为空!" }); } if (string.IsNullOrWhiteSpace(username)) { return JsonConvert.SerializeObject(new { statue = false, msg = "密码不能为空!" }); } if (username.Length > 0) { if (!Regex.IsMatch(username, @"^[\d\w_]{6,12}$")) { return JsonConvert.SerializeObject(new { statue = false, msg = "登陆帐号输入不正确,应由大小写字母、数字或下划线组成,长度不能少于6个字符长度且不能大于12个字符" }); } if (Regex.IsMatch(username, @"^\d+$")) { return JsonConvert.SerializeObject(new { statue = false, msg = "登陆帐号不能全为数字" }); } if (ADeeWu.HuoBi3J.Libary.Validator.Validate(Validator.ValidationType.Email, username)) { return JsonConvert.SerializeObject(new { statue = false, msg = "登陆帐号不能使用Email地址" }); } //帐号验证由存储过程实现 if (dal.Exist("LoginName", username)) { return JsonConvert.SerializeObject(new { statue = false, msg = "该用户帐号已存在" }); } } else { return JsonConvert.SerializeObject(new { statue = false, msg = "用户帐号不能为空" }); } if (password == "") { return JsonConvert.SerializeObject(new { statue = false, msg = "请输入登陆密码" }); } string SessionCode = Session["CheckCode"] as string; if (SessionCode == null) { return JsonConvert.SerializeObject(new { statue = false, msg = "验证码丢失,请重新点击验证码图片!" }); } if (validCode.ToLower() != SessionCode.ToLower()) { return JsonConvert.SerializeObject(new { statue = false, msg = "验证码输入错误" }); } string passwordByMD5 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(password, "md5"); db.Parameters.Append("@LoginName", username); db.Parameters.Append("@LoginPwd", passwordByMD5); db.Parameters.Append("@AlipayAccount", ""); db.Parameters.Append("@Name", ""); db.Parameters.Append("@Tel", ""); db.Parameters.Append("@Email", ""); db.Parameters.Append("@LastLogin", DateTime.Now); db.Parameters.Append("@RegTime", DateTime.Now); db.Parameters.Append("@UIN", ""); db.Parameters.Append("@AutoUIN", 1); db.Parameters.Append("@ReturnUIN", "", ParameterDirection.Output, DbType.String).Size = 20; db.Parameters.Append("@ErrorMessage", "", ParameterDirection.Output, DbType.String).Size = 1000; db.AutoClearParameters = false; if (ADeeWu.HuoBi3J.Libary.Utility.GetInt(db.RunProc("SP_User_Register"), -1) == 0) { Class.UserSession.Logout(); //this.LoginUser = Class.UserSession.Login(db.Parameters["@ReturnUIN"].Value.ToString(), password, DateTime.Now); return JsonConvert.SerializeObject(new { statue = true, msg = "注册成功,请使用注册账号进行登录!" }); } else { db.Logger.Log(string.Format(@"执行存储过程时发生错误 {0}\r\nURL:{1}\r\n错误信息:{2}", DateTime.Now, Request.Url.ToString(), db.Parameters["@ErrorMessage"].Value)); return JsonConvert.SerializeObject(new { statue = true, msg = "操作失败,请重试!" }); } }
/// <summary> /// 注册用户,http://mobile.huobi3j.com/user/register /// </summary> /// <param name="username">用户名</param> /// <param name="password">密码(不加密)</param> /// <returns></returns> public ActionResult Register(string username, string password) { ADeeWu.HuoBi3J.DAL.Users dal = new ADeeWu.HuoBi3J.DAL.Users(); DataBase db = DataBase.Create(); if (string.IsNullOrWhiteSpace(username)) { return GetJson(new JsonResponse { status = false, message = "用户名不能为空!" }); } if (string.IsNullOrWhiteSpace(username)) { return GetJson(new JsonResponse { status = false, message = "密码不能为空!" }); } if (username.Length > 0) { if (!Regex.IsMatch(username, @"^[\d\w_]{6,12}$")) { return GetJson(new JsonResponse { status = false, message = "登陆帐号输入不正确,应由大小写字母、数字或下划线组成,长度不能少于6个字符长度且不能大于12个字符" }); } if (Regex.IsMatch(username, @"^\d+$")) { return GetJson(new JsonResponse { status = false, message = "登陆帐号不能全为数字" }); } if (ADeeWu.HuoBi3J.Libary.Validator.Validate(Validator.ValidationType.Email, username)) { return GetJson(new JsonResponse { status = false, message = "登陆帐号不能使用Email地址" }); } //帐号验证由存储过程实现 if (dal.Exist("LoginName", username)) { return GetJson(new JsonResponse { status = false, message = "该用户帐号已存在" }); } } else { return GetJson(new JsonResponse { status = false, message = "用户帐号不能为空" }); } if (password == "") { return GetJson(new JsonResponse { status = false, message = "请输入登陆密码" }); } string passwordByMD5 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(password, "md5"); db.Parameters.Append("@LoginName", username); db.Parameters.Append("@LoginPwd", passwordByMD5); db.Parameters.Append("@AlipayAccount", ""); db.Parameters.Append("@Name", ""); db.Parameters.Append("@Tel", ""); db.Parameters.Append("@Email", ""); db.Parameters.Append("@LastLogin", DateTime.Now); db.Parameters.Append("@RegTime", DateTime.Now); db.Parameters.Append("@UIN", ""); db.Parameters.Append("@AutoUIN", 1); db.Parameters.Append("@ReturnUIN", "", ParameterDirection.Output, DbType.String).Size = 20; db.Parameters.Append("@ErrorMessage", "", ParameterDirection.Output, DbType.String).Size = 1000; db.AutoClearParameters = false; if (ADeeWu.HuoBi3J.Libary.Utility.GetInt(db.RunProc("SP_User_Register"), -1) == 0) { return GetJson(new JsonResponse { status = true, message = "注册成功,请使用注册账号进行登录!" }); } else { db.Logger.Log(string.Format(@"执行存储过程时发生错误 {0}\r\nURL:{1}\r\n错误信息:{2}", DateTime.Now, Request.Url.ToString(), db.Parameters["@ErrorMessage"].Value)); return GetJson(new JsonResponse { status = false, message = "操作失败,请重试!" }); } }
protected void btnSubmit_Click(object sender, EventArgs e) { ADeeWu.HuoBi3J.DAL.Users dal = new ADeeWu.HuoBi3J.DAL.Users(); DataBase db = DataBase.Create(); string loginName = this.txtLoginName.Text.Trim(); string pwd = this.txtLoginPwd.Text.Trim(); string pwd2 = this.txtLoginPwd2.Text.Trim(); string alipayAccount = string.Empty; string name = this.txtName.Text.Trim(); string email = this.txtEmail.Text.Trim(); string tel = this.txtTel.Text.Trim(); if (radSelMySelf.Checked) { if (fhUIN.Value.Trim().Length == 0) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("请选择通讯号码!"); return; } } if (loginName.Length > 0) { if (!Regex.IsMatch(loginName, @"^[\d\w_]{6,12}$")) { WebUtility.ShowMsg(this, "登陆帐号输入不正确,应由大小写字母、数字或下划线组成,长度不能少于6个字符长度且不能大于12个字符"); return; } if (Regex.IsMatch(loginName, @"^\d+$")) { WebUtility.ShowMsg(this, "登陆帐号不能全为数字"); return; } if (ADeeWu.HuoBi3J.Libary.Validator.Validate(Validator.ValidationType.Email, loginName)) { WebUtility.ShowMsg(this, "登陆帐号不能使用Email地址!"); return; } //帐号验证由存储过程实现 if (dal.Exist("LoginName", loginName)) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("该用户帐号已存在!"); return; } } else { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("用户帐号不能为空!"); return; } if (pwd == "") { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("请输入登陆密码!"); return; } if (pwd2 == "") { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("请输入登陆确认密码!"); return; } if (pwd != pwd2) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("两次输入密码不一致!"); return; } if (email.Length > 0) { if (!ADeeWu.HuoBi3J.Libary.Validator.Validate(Validator.ValidationType.Email, email)) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("请输入有效的Email地址!"); return; } if (dal.Exist("Email", email)) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("该Email已被注册使用,请重新填写!"); return; } } string validateCode = Session["CheckCode"] as string; if (validateCode == null) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("验证码丢失,请重新点击验证码图片!"); return; } if (txtValidCode.Text.ToLower() != validateCode.ToLower()) { ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("验证码输入错误!"); return; } string pwdMd5 = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(pwd, "md5"); db.Parameters.Append("@LoginName", loginName); db.Parameters.Append("@LoginPwd", pwdMd5); db.Parameters.Append("@AlipayAccount", alipayAccount); db.Parameters.Append("@Name", name); db.Parameters.Append("@Tel", tel); db.Parameters.Append("@Email", email); db.Parameters.Append("@LastLogin", DateTime.Now); db.Parameters.Append("@RegTime", DateTime.Now); db.Parameters.Append("@UIN", this.fhUIN.Value); db.Parameters.Append("@AutoUIN", this.radSelMySelf.Checked ? 0 : 1); db.Parameters.Append("@ReturnUIN", "", ParameterDirection.Output, DbType.String).Size = 20; db.Parameters.Append("@ErrorMessage", "", ParameterDirection.Output, DbType.String).Size = 1000; db.AutoClearParameters = false; if (ADeeWu.HuoBi3J.Libary.Utility.GetInt(db.RunProc("SP_User_Register"), -1) == 0) { Class.UserSession.Logout(); this.LoginUser = Class.UserSession.Login(db.Parameters["@ReturnUIN"].Value.ToString(), pwd, DateTime.Now); ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg(this, "注册成功!", "/My/User"); } else { this.fhUIN.Value = ""; ADeeWu.HuoBi3J.Libary.WebUtility.ShowMsg("操作失败!"); db.Logger.Log(string.Format(@"执行存储过程时发生错误 {0}\r\nURL:{1}\r\n错误信息:{2}", DateTime.Now, Request.Url.ToString(), db.Parameters["@ErrorMessage"].Value)); } db.Parameters.Clear(); db.AutoClearParameters = true; }