日期:2014-05-17  浏览次数:20474 次

如何从一个数据库的表里,提取关于当前登陆用户的信息
做的是一个卖书的网站(做着玩的 为了学习)。 在一个网页里,我想把某个用户(就是当前已登录的用户) 的购买历史显示出来。 所有的购买历史都放在一个表里了。 我打印购买记录的时候 是直接 拖拽的GridView, 在设置where的时候,应该是 MemberName=....... 等号后面的 应该放现在已登录的那个用户。 但是我不知道怎么放填。 我只知道我可以通过
User.Identity.Name 这个可以拿到现在已登陆的名字,但是我不知道怎么放上去。是通过GridView自身设置里 选 profile, session...之后....? 还是在c#文件里page_load里弄?不管怎么弄,只要弄出来就行,请大家告诉我具体方法。谢谢。比如说那个表名叫 order, 其中一列的属性叫 MemberName, 其他列就是购买信息。

------解决方案--------------------
楼主是不知道怎么取用户的信息吗?看下面的例子:
C# code

     /// <summary>
        /// 用户登录时查询
        /// </summary>
        /// <param name="uname"></param>
        /// <param name="pwd"></param>
        /// <returns></returns>
        public string[] Login_Sel(string uname, string pwd)
        {
            try
            {
                SqlParameter[] parm = {
                                          SqlHelper.CreateCommandParameter("@uname",SqlDbType.NVarChar,uname),
                                          SqlHelper.CreateCommandParameter("@pwd",SqlDbType.NVarChar,pwd)
                                      };
                string str = "select * from Users where uname=@uname and pwd=@pwd";
                cmd = SqlHelper.CreateDbCommand(str, conn);
                cmd.Parameters.AddRange(parm);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                string[] result = new string[5];
                if (dr.Read())
                {
                    result[0] = dr["uname"].ToString();
                    result[1] = dr["truename"].ToString();
                    result[2] = dr["qx"].ToString();                   
                    result[4] = dr["dptid"].ToString();
                    return result;
                }
                else
                {
                    return null;
                }
            }
            catch (Exception e)
            {

                throw e;
            }
            finally
            {
                conn.Close();
            }
        }
//登录按钮,取的用户信息相当详细
 protected void IBLogin_Click(object sender, ImageClickEventArgs e)
        {
            Users u = new Users();            
            string uname =TextUname.Text.Trim();
            string pwd = TextUpwd.Text.Trim();
            string lasttime = u.LastLoginTime();
            string nowtime = DateTime.Now.ToString("yyyy-MM-dd");
            string last2time = u.Last2Time();
            if (DateTime.Parse(lasttime) <= DateTime.Parse(nowtime)&&DateTime.Parse(lasttime)>=DateTime.Parse(last2time))
            {
                if (DateTime.Parse(nowtime) < DateTime.Parse("2012-08-1"))
                {
                    if (u.Login_Sel(uname, pwd) != null)
                    {
                        string logintime = DateTime.Now.ToString("yyyy-MM-dd");
                        u.Add_LoginTime(logintime);
                        string[] result = new string[3];
                        result = u.Login_Sel(uname, pwd);
                        Session["truename"] = result[1].ToString();
                        Session["uname"] = result[0].ToString();
                        Session["qx"] = result[2].ToString();
                        Session["dptid"] = result[4].ToString();
                        Response.Redirect("Index.aspx");
                    }
                    else
                    {
                        Common.ShowMessage.Show(Page, "seuss", "用户名或密码不正确", "Login.aspx");
                        TextUname.Text = "";
                        TextUpwd.Text = "";
                    }
                }
                else
                {
                    Common.ShowMessage.Show(Page, "s