如何仅检索与在此期间登录的用户相关的数据。 [英] How to retrieve only the data related to the user logged in during that time.

查看:58
本文介绍了如何仅检索与在此期间登录的用户相关的数据。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

protected void Page_Load(object sender, EventArgs e)
    {
        
        if (Session.IsNewSession)
        {
            Response.Redirect("Login.aspx");
        }
       
        if (!Page.IsPostBack)
        {
            string str = System.Configuration.ConfigurationManager.ConnectionStrings["CensusConnectionString"].ConnectionString;
            SqlConnection con = new SqlConnection(str);
            if (con.State == ConnectionState.Closed)
            {
                con.Open();
            }
            string @sessionId = System.Web.HttpContext.Current.Session.SessionID;
            SqlDataAdapter da = new SqlDataAdapter("select * from ureg", con);
            DataTable dt = new DataTable();
            da.Fill(dt);
            GridView1.DataSource = dt;
            GridView1.DataBind();
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        foreach (GridViewRow vrow in GridView1.Rows)
        {
            string card = GridView1.DataKeys[vrow.RowIndex].Value.ToString();
            string str = System.Configuration.ConfigurationManager.ConnectionStrings["CensusConnectionString"].ConnectionString;
            SqlConnection con = new SqlConnection(str);
            if (con.State == ConnectionState.Closed)
            {
                con.Open();
            }
            SqlDataAdapter da = new SqlDataAdapter("select * from ureg where card='"+card+"'", con);
            DataTable dt = new DataTable();
            da.Fill(dt);
            Session["fnm"] = dt.Rows[0]["fname"].ToString();
            Session["lnm"] = dt.Rows[0]["lname"].ToString();
            Session["gen"] = dt.Rows[0]["gender"].ToString();
            Session["cat"] = dt.Rows[0]["catagory"].ToString();
            Session["add"] = dt.Rows[0]["adr"].ToString();
            Session["dob"] = dt.Rows[0]["dob"].ToString();
            Session["ct"] = dt.Rows[0]["city"].ToString();
            Session["pin"] = dt.Rows[0]["pin"].ToString();
            Session["state"] = dt.Rows[0]["state"].ToString();
            Session["mail"] = dt.Rows[0]["mail"].ToString();
            Session["ph"] = dt.Rows[0]["phno"].ToString();
            Session["card"] = dt.Rows[0]["card"].ToString();
            Response.Redirect("update_user.aspx");
        }
    }



















I have this code behind file.it is showing all data of the table "ureg" after logged into the page.But i want to retrieve only the data related to the user logged in during that time.
please provide me the necessary solution to solve this problem.

推荐答案

您好,



请按照以下步骤



步骤:1



登录登录页面时必须获取用户ID。然后,您可以将用户ID存储在会话对象上。



Hi,

Kindly follow the below steps

Step: 1

You have to get the user id while logged in login page. then, you can store the user id on session object.

session.add("User_Id",txtUserId.Text.ToString().Trim())





步骤:2



登录后成功之后,您可以检查user_id会话对象是否为空状态。然后,您可以请求数据库检索特定用户的数据,如下所示





Step: 2

After you logged in successfully, you can check the user_id session object is null or not condition. then, you can request database to retrieve the data for the particular user as below

if(session["User_Id"]!=null)
{
string str = System.Configuration.ConfigurationManager.ConnectionStrings["CensusConnectionString"].ConnectionString;
            SqlConnection con = new SqlConnection(str);
            if (con.State == ConnectionState.Closed)
            {
                con.Open();
            }
            string @sessionId = System.Web.HttpContext.Current.Session.SessionID;
            SqlCommand cmd=new SqlCommand("Select * from ureg where user_id=@user_id", con);          cmd.Parameters.AddWithValue("@user_id",session["User_Id"].ToString().Trim());
SqlDataAdapter da=new SqlDataAdapter(cmd);         
            DataTable dt = new DataTable();
            da.Fill(dt);
            GridView1.DataSource = dt;
            GridView1.DataBind();
}





我希望它对你有所帮助



I hope it can be helpful to you


你有SQL显示select * from ureg。只需在其上添加一个where子句,这样你就只能获得所需的行。
You have SQL that shows "select * from ureg". Just add a where clause on to it so you only get back the row you need.


登录时...通过Session获取用户的ID ..



之后



创建一个标签并为其指定会话价值



如果LAble id是lbl_ureg_id则意味着..



lbl_ureg_id.Text = Session [userid]。ToString();







select * from ureg其中uregId ='+ lbl_ureg_id.Text +'
During the login... Get The ID of the user by means of Session..

After That

Create a label and assign the Session Value on it

If LAble id is lbl_ureg_id mean..

lbl_ureg_id.Text=Session["userid"].ToString();



select * from ureg where uregId='"+ lbl_ureg_id.Text +"'


这篇关于如何仅检索与在此期间登录的用户相关的数据。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆