void UpdateAccount(Dictionary <string, object> cinfo, string opSrc) { string acc = cinfo["n1"].ToString(); if (string.IsNullOrEmpty(acc)) { Response.Write("err_data_error");//号码错误 return; } string[] field = { "pwd" }; Dictionary <string, object> data = MongodbAccount.Instance.ExecuteGetBykey("AccountTable", "acc", acc, field); if (data == null) { Response.Write("err_not_acc");//找不到账号 } else { // 玩家账号密码不能在游戏客户端修改,但可以通过API接口来改 if (opSrc != CC.RESET_MODIFY_BY_API) { DyOpModifyPlayerPwd dy = new DyOpModifyPlayerPwd(); bool canModify = dy.canModifyPwd(acc); if (!canModify) { Response.Write("err_cannot_modify"); // 不能修改密码 return; } string oldpwd = AESHelper.AESDecrypt(cinfo["n2"].ToString(), AES_KEY);//password if (oldpwd != data["pwd"].ToString()) { Response.Write("err_pwd_error");//验证码错误 return; } } string spwd = AESHelper.AESDecrypt(cinfo["n3"].ToString(), AES_KEY); //password if (spwd.Length != 32) //md5 { Response.Write("err_pwd_error"); //密码错误 return; } Dictionary <string, object> updata = new Dictionary <string, object>(); updata["pwd"] = spwd; updata["updatepwd"] = true; string ret = MongodbAccount.Instance.ExecuteUpdate("AccountTable", "acc", acc, updata); if (ret == "") { Response.Write("err_success"); } else { Response.Write("err_system_error"); } } }
protected void Page_Load(object sender, EventArgs e) { ParamModifyPlayerPwd param = new ParamModifyPlayerPwd(); param.m_gmAccount = Request.QueryString["gmAcc"]; param.m_gmPwd = Request.QueryString["gmPwd"]; param.m_playerAcc = Request.QueryString["playerAcc"]; param.m_oldPwd = Request.QueryString["oldPwd"]; param.m_newPwd = Request.QueryString["newPwd"]; param.m_sign = Request.QueryString["sign"]; if (!param.isParamValid()) { Dictionary <string, object> data = new Dictionary <string, object>(); data.Add("result", RetCode.RET_PARAM_NOT_VALID); Response.Write(Helper.genJsonStr(data)); return; } DyOpModifyPlayerPwd dy = new DyOpModifyPlayerPwd(); string retStr = dy.doDyop(param); Response.Write(retStr); }