none
Sessão RRS feed

  • Pergunta

  • Ola pessoa tenho um projecto em asp.net C#,tenho a parte publica e a privada e quero que o usuário quando fazer o login,a minha sessão tem que receber o id do usuário da  BD(SqlServer) da tabela (Usuario)  e quando comentar algo ele faz o insert do mesmo id do Usuario logado...
    quinta-feira, 16 de agosto de 2012 20:59

Respostas

  • Malta obrigado pela ajuda...
    Consegui resolver o problema..


    using System.Data.SqlClient;
    
    
        public partial class Default : System.Web.UI.Page
        {
            conexao conexao = new conexao();
            SqlDataReader leitura;
            SqlCommand comando = new SqlCommand();
    
            protected void Page_Load(object sender, EventArgs e)
            {
    
            }
    
            protected void iniciarlBtn_Click(object sender, EventArgs e)
            {
                InciarLogin();
            }
    
            public void InciarLogin()
            {
    
                String consulta = "select idUsuarios from Usuarios where nomeUsuario = @nomeUsuario and senha = @senha";
    
                comando.CommandType = System.Data.CommandType.Text;
                comando.Parameters.AddWithValue("@nomeUsuario", Txtnomelg.Text);
                comando.Parameters.AddWithValue("@senha", Txtsenhalg.Text);
                comando.Connection = conexao.Conectar();
                leitura = comando.ExecuteReader();
                if (leitura.Read())
                {
                           Session["logar"] = Txtnomelg.Text;
                            Session["logar"] = leitura.GetValue(0).ToString();
                            Response.Redirect("/Administrativa/admistrativaPrincipal.aspx");
    
    
                        }
                       
    
                else
                {
                    Response.Redirect("ErroLogin.aspx");
                }
    
                conexao.Conectar().Close();
            }
        }
    }


    Depois é só colocar uma label nas paginas privada que vais fazer o insert, a label é para receber o valor da sessão que trais  o id do usuário.
     lblUsuario.Text = Session["logar"].ToString();


                                                                                          

    danilo marques

    segunda-feira, 10 de dezembro de 2012 02:08

Todas as Respostas

  • Aqui você aprenderá tudo o que é necessário para fazer o que deseja: http://www.asp.net/web-forms

    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"

    quinta-feira, 16 de agosto de 2012 21:22
  • Rafa Santos Meu valeu pela dica do forum...
    Quanto a pergunta o teu link não ajudou pk o meu Inglesh esta mal...
    quinta-feira, 16 de agosto de 2012 22:31
  • No evento Click do Botão de login você pode usar o seguinte...

    protected void btnLogin_Click(object sender, EventArgs e)
        {
            //função logar
    
            if (//se a função logar retornar verdadeiro)
            {
               //cria um Session e atribui a ela
               //o nome de usuario que foi digitado
               //no textbox txtUsuario na tela de login
    
                Session["login"] = txtUsuario.Text;
                
            }
            else
            {
                //se a função logar retornar falso
                //exibe o erro em uma label
                lblErro.Text = "Usuario não Encontrado";
            }
        }
    quinta-feira, 16 de agosto de 2012 23:15
  • meu valeu pela ajuda o meu objectivo é...
    tenho a parte publica e a privada e quero que o usuário quando fazer o login,a minha sessão tem que receber o id do usuário da  BD(SqlServer) da tabela (Usuario)  e quando comentar algo ele faz o insert do mesmo id do Usuario logado...
    quinta-feira, 16 de agosto de 2012 23:41
  • Eu já criei uma sessão só que ñ faz o que eu quero....

    Publica
     protected void Page_Load(object sender, EventArgs e)
            {


                Session["logar"] = null;
                //  Session.Timeout = 1;
                if (Response.Cookies["valido"] == null)
                {
                    nomeLBtn.Text = Response.Cookies["valido"].Value;
                    senhaLBtn.Text = Response.Cookies["valido"].Value;

                }
            }                                   

     public

    /* método para o botão login */

    void InciarLogin()
            {
           
                comando.CommandText = "select nome,senha from Administrador where nome = @nome and senha = @senha";
                comando.CommandType = System.Data.CommandType.Text;
                comando.Parameters.AddWithValue("@nome", nomeLBtn.Text);
                comando.Parameters.AddWithValue("@senha", senhaLBtn.Text);
                comando.Connection = conexao.Conectar();
                /*comando.ExecuteReader();*/
                leitura = comando.ExecuteReader();

                if (leitura.Read())
                {
                    Session.Add("logar", "sim"); 

                    Response.Redirect("administrador.aspx");
                }

                else
                {

                    Response.Redirect("Errodelogin.aspx");


                }

    Privada

                 protected void Page_Load(object sender, EventArgs e)
            {

                if (Session["logar"] == null)
                {
                    Response.Redirect("Default.aspx");
                }
    sexta-feira, 17 de agosto de 2012 00:04
  • É o seguinte Danilo, como você tá usando Session não vejo a necessidade de você usar cookie, 

    pra passar o nome do usuario logado na Session, vc pode usar o método que te passei

    protected void Page_Load(object sender, EventArgs e)
            {
               
            }                                   
    
     public
    
    /* método para o botão login */
    
    void InciarLogin()
            {
           
                comando.CommandText = "select nome,senha from Administrador where nome = @nome and senha = @senha";
                comando.CommandType = System.Data.CommandType.Text;
                comando.Parameters.AddWithValue("@nome", nomeLBtn.Text);
                comando.Parameters.AddWithValue("@senha", senhaLBtn.Text);
                comando.Connection = conexao.Conectar();
                /*comando.ExecuteReader();*/
                leitura = comando.ExecuteReader();
    
                if (leitura.Read())
                {
                    Session["logar"] = nomeLBtn.Text;
                    Response.Redirect("administrador.aspx");
                }
    
                else
                {
    
                    Response.Redirect("Errodelogin.aspx");
    
    
                }
    
    Privada
                 protected void Page_Load(object sender, EventArgs e)
            {
    
                if (Session["logar"] == null)
                {
                    Response.Redirect("Default.aspx");
                }

    no evento load da sua página de comentários, você pode armazenar o valor em uma string, em um textbox ou label e na hora que for executado o metodo de insersao do comentário vc passa o valor, por exemplo...

    txtUsuario.Text = Convert.ToString(Session["login"]); //caso você queira inserir o nome no db. Ou...

    private void buscaId()
    
    {
    
                SqlCommand cmd2 = new SqlCommand();
                cmd.CommandType = CommandType.Text;
                cmd.Connection = con;
    
               //buca o id do nome de usuario armazenado na sessão, mas o nome não pode ter outro igual caso contrário trará qualquer resultado
    
               
    
                cmd.CommandText = @"SELECT id from usuarios where nome =" + (Session["logar"]) + "";
    
                object idUuario= cmd.ExecuteScalar();
    
                //armazena o id buscado no db na variavel idUser
    
               
    
                int idUser = Convert.ToInt32(idUsuario);
                cmd.Transaction = tn;
                cmd.ExecuteNonQuery();
    
    }

    ai é só salvar o idUser no db





    sexta-feira, 17 de agosto de 2012 00:26
  • Obrigado pelas dica entendi a parti da sessão + a do Insert...
    Não consegui compreender...



    O insert do id do Usuario tem q ser a nivel de cogico o Usuario não pode digitar...

     

    sexta-feira, 17 de agosto de 2012 01:09
  • quais os campos da tabela que vc quer salvar o id do usuário?

    como está o evento para salvar comentário da sua página privada? poste os códigos pra eu te explicar melhor.

    sexta-feira, 17 de agosto de 2012 01:20
  • Exemplo:
    
     <asp:Label ID="Label"  runat="server" Text="Comentario"></asp:Label>
        <asp:TextBox ID="comentarioTxt" runat="server"></asp:TextBox><br />
     
    asp:Button ID="guardarBtn"  runat="server" 
            Text="Guardar"  />
    
    
    protected void guardarBtn_Click(object sender, EventArgs e)
            {
                guardar();
            }
    
            public void guardar()
            {
    
                comando.CommandText = "insert into Comentariovalues (@descComentario,@idUsuario)";
                comando.CommandType = System.Data.CommandType.Text;
    
                comando.Parameters.AddWithValue("@descComentario",  comentarioTxt.Text );
               //O que uso aqui para inserir O valor da sessão do Usuario logado....
                comando.Connection = conexao.Conectar();
                comando.ExecuteNonQuery();
                conexao.Conectar().Close();
    
            }

    sexta-feira, 17 de agosto de 2012 01:41
  • Então Danilo,

    Se você quer armazenar o id do Usuário logado na sua tabela comentários, você tem que ter um campo tipo idUsuario nesta tabela, com chave estrangeira para tabela usuários. Quando você for fazer logon vai deixar seu código da seguinte forma.

    //variável que recebe o id do Usuario

    int idUser = 0;

    private void buscaId() { SqlConnection com = new SqlConnection("string de conexão") SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.Text; cmd.Connection = con; //busca o id do nome de usuario logado na sessão. cmd.CommandText = @"SELECT id from usuarios where nome =" + (Session["logar"]) + ""; object idUuario= cmd.ExecuteScalar(); //armazena o id buscado na variavel idUser idUser = Convert.ToInt32(idUsuario); cmd.Transaction = tn; cmd.ExecuteNonQuery(); }

    ai no metodo usado para gravar vc faz a seguinte mudança

    protected void guardarBtn_Click(object sender, EventArgs e)
            {
                guardar();
            }
    
            public void guardar()
            {
    
                comando.CommandText = "insert into Comentariovalues (descComentario,idUsuario)Values(@descComentario,@idUsuario)";
                comando.CommandType = System.Data.CommandType.Text;
    
                comando.Parameters.AddWithValue("@descComentario",  comentarioTxt.Text );
                comando.Parameters.AddWithValue("@idUsuario", Convert.ToInt32(idUser));
                comando.Connection = conexao.Conectar();
                comando.ExecuteNonQuery();
                conexao.Conectar().Close();
    
            }



    sexta-feira, 17 de agosto de 2012 12:01
  • Acho que o Evandro Oliveira Novais  já respondeu a sua pergunta.

    Maaaas eu queria fazer um comentário: é melhor usar os profiles do Membership :)


    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX

    sexta-feira, 17 de agosto de 2012 12:44
  •   Evandro Oliveira Novais   valeu,vou já testar depois tido uma resposta muito obrigado pela ajuda que estas a me dar só uma pequena duvida este código fica em que pagina e em que evento 

    //variável que recebe o id do Usuario

    int idUser = 0;

    private void buscaId() { SqlConnection com = new SqlConnection("string de conexão") SqlCommand cmd = new SqlCommand(); cmd.CommandType = CommandType.Text; cmd.Connection = con; //busca o id do nome de usuario logado na sessão. cmd.CommandText = @"SELECT id from usuarios where nome =" + (Session["logar"]) + ""; object idUuario= cmd.ExecuteScalar(); //armazena o id buscado na variavel idUser idUser = Convert.ToInt32(idUsuario); cmd.Transaction = tn; cmd.ExecuteNonQuery(); }



    danilo marques

    sexta-feira, 17 de agosto de 2012 12:55
  • Priscila Mayumi  Obrigado pela disponibilidade e com certeza que irei precisar de ti...

    danilo marques

    sexta-feira, 17 de agosto de 2012 12:58
  • Danilo, não esquece de marcar as respostas úteis aí.

    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"

    sexta-feira, 17 de agosto de 2012 14:25
  • Obrigado pelo alerta Rafa Santos...

    danilo marques

    sexta-feira, 17 de agosto de 2012 14:47
  •    

    Evandro Oliveira Novais não consegui executar alterei algumas coisas no codigo mesmo assim esta a dar erro....


    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.SqlClient; namespace testeSessao { public partial class Pricipal : System.Web.UI.Page { conexao conexao = new conexao(); SqlCommand comando = new SqlCommand(); private int idUser; protected void Page_Load(object sender, EventArgs e) { if (Session["logar"] == null) { Response.Redirect("Erro.aspx"); } else { Label2.Text = "USUARIO Valido"; } } private void buscaId() { // SqlConnection com = new SqlConnection("string de conexão") // SqlCommand cmd = new SqlCommand(); // comando.CommandType = CommandType.Text; // cmd.Connection= con; // comando.Connection = conexao.Conectar(); //busca o id do nome de usuario logado na sessão. comando.CommandText = @"SELECT idUsuario from TestUsuario where nome =" + (Session["logar"]) + ""; comando.CommandType = System.Data.CommandType.Text; object idUsuario= comando.ExecuteScalar(); //armazena o id buscado na variavel idUser idUser = Convert.ToInt32(idUsuario); comando.Connection = conexao.Conectar(); comando.ExecuteNonQuery(); } protected void Button1_Click(object sender, EventArgs e) { Session.Abandon(); Response.Redirect("login.aspx"); } protected void guardarBtn_Click(object sender, EventArgs e) { buscaId(); guardar(); } public void guardar() { comando.CommandText = "insert into TestComentario values (@descComentario,@idUsuario)"; comando.CommandType = System.Data.CommandType.Text; comando.Parameters.AddWithValue("@descComentario", comentarioTxt.Text); comando.Parameters.AddWithValue("@idUsuario", Convert.ToInt32(idUser)); comando.Connection = conexao.Conectar(); comando.ExecuteNonQuery(); conexao.Conectar().Close(); } } }



    danilo marques


    sexta-feira, 17 de agosto de 2012 15:36
  • Que linha que tá acusando erro?

    E vc executou asism mesmo com os comentários?

    Aliais, essa primeira linha

    conexao conexao = new conexao();

    Ela não está errada? Desse jeito sugere que você tem uma classe chamada Conexao. Pode ser nela o erro e não no código que vc postou o/


    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX


    • Editado Priscila Mayumi Sato sexta-feira, 17 de agosto de 2012 16:23 Percebi um novo problema no código dele
    sexta-feira, 17 de agosto de 2012 16:01
  • Prinscila Mayumi Esta a dar o seguinte erro...


    Line 63: comando.CommandText = @"SELECT idUsuario from TestUsuario where nome =" + (Session["logar"]) + ""; Line 64: comando.CommandType = System.Data.CommandType.Text; Line 65: object idUsuario= comando.ExecuteScalar(); Line 66: Line 67: //armazena o id buscado na variavel idUser

    danilo marques

    sexta-feira, 17 de agosto de 2012 16:27
  • se nome for um campo do tipo texto, sua query está errada. Deverá ficar assim:

    comando.CommandText = @"SELECT idUsuario from TestUsuario where nome ='" + (Session["logar"]) + "'";


    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"


    • Editado Rafa Santos sexta-feira, 17 de agosto de 2012 16:40
    sexta-feira, 17 de agosto de 2012 16:39
  • Prinscila Mayumi Esta a dar o seguinte erro...


    Line 63: comando.CommandText = @"SELECT idUsuario from TestUsuario where nome =" + (Session["logar"]) + ""; Line 64: comando.CommandType = System.Data.CommandType.Text; Line 65: object idUsuario= comando.ExecuteScalar(); Line 66: Line 67: //armazena o id buscado na variavel idUser

    danilo marques

    Esse problema é porque o retorno é int. Eu trocaria o object por int.

    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX

    sexta-feira, 17 de agosto de 2012 16:50
  • Prinscila Mayumi Esta a dar o seguinte erro...


    Line 63: comando.CommandText = @"SELECT idUsuario from TestUsuario where nome =" + (Session["logar"]) + ""; Line 64: comando.CommandType = System.Data.CommandType.Text; Line 65: object idUsuario= comando.ExecuteScalar(); Line 66: Line 67: //armazena o id buscado na variavel idUser

    danilo marques

    Esse problema é porque o retorno é int. Eu trocaria o object por int.

    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX

    hiii agora a MayogaX falando eu lembrei de uma coisa q também pode estar dando erro. Você precisa converter a saída da sua Session. Coloque: 
    Session["logar"].ToString() na sua query.

    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"

    sexta-feira, 17 de agosto de 2012 16:52
  • Prinscila Mayumi Esta a dar o seguinte erro...


    Line 63: comando.CommandText = @"SELECT idUsuario from TestUsuario where nome =" + (Session["logar"]) + ""; Line 64: comando.CommandType = System.Data.CommandType.Text; Line 65: object idUsuario= comando.ExecuteScalar(); Line 66: Line 67: //armazena o id buscado na variavel idUser

    danilo marques

    Esse problema é porque o retorno é int. Eu trocaria o object por int.

    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX

    hiii agora a MayogaX falando eu lembrei de uma coisa q também pode estar dando erro. Você precisa converter a saída da sua Session. Coloque: 
    Session["logar"].ToString() na sua query.

    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"

    Vish, verdade, Rafa.

    Se não ele vai querer passar um object e tal.

    Testa aí cara e nos avisa o que deu o/


    Terei prazer em tentar te ajudar :)

    Sou só uma little padawan que tem sorte de andar com jedis, mas farei o possível por quem precisar :)

    Se quiser: mayumisatox@gmail.com ou @MayogaX

    sexta-feira, 17 de agosto de 2012 17:00
  • comando.ExecuteScalar() não esta permite receber int...
     
    Int idUsuario= ExecuteScalar();

    Erro: 
        cannot implicitly convert tipe "Object" to "Int ".An Conversion Exists (are you missing a cast?) 

    danilo marques

    sexta-feira, 17 de agosto de 2012 17:24
  • Vc teria que usar conversor do tipo TryParse com um parâmetro out para recuperar o valor convertido em inteiro. Mas pra que complicar, não é?! Não estamos falando de um sistema que lança foguetes, então troque seu ExecuteScalar por um ExecuteReader.

    DataReader reader = comando.ExecuteReader(CommandBehavior.CloseConnection);


    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"



    • Editado Rafa Santos sexta-feira, 17 de agosto de 2012 17:35
    sexta-feira, 17 de agosto de 2012 17:34
  • Cara você tem que adaptar o exemplo a sua realidade, no nome da sua tabela é TesteUsuario? a descrição do id do Usuario na sua tabela é idUsuario? a descrição do nome do usuario na sua tabela é nome?,  você tem que deixar os nomes iguais aos dos seus campos, caso contrário não vai funcionar.

    outra coisa o tipo Object serve pra vários tipos de campos.


    sexta-feira, 17 de agosto de 2012 18:43
  • Rafa Santos fiquei sem perceber...

    danilo marques

    sexta-feira, 17 de agosto de 2012 18:48
  • Assim funciona um ExecuteReader:

    private static void CreateCommand(string queryString,
        string connectionString)
    {
        using (SqlConnection connection = new SqlConnection(
                   connectionString))
        {
            connection.Open();
    
            SqlCommand command = new SqlCommand(queryString, connection);
            SqlDataReader reader = command.ExecuteReader();
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}", reader[0]));
            }
        }
    }

    mais dúvida, procure no google pelo site do Macoratti que é em portugues qualquer coisa sobre ExecuteReader.


    Rafael Santos

    Observações:
    1. Selecione a opção "Habilitar o Live Alerts por Padrão" nas suas configurações para que possa acompanhar em tempo real as atividades relacionadas a sua Thread;
    2. Não abandone sua Thread. Ao perguntar, fique atento às respostas; ao encontrar uma solução, compartilhe;
    3. As pessoas que dedicam seu tempo na busca por soluções para você não ganham nada em troca. Valorize-as e em forma de agradecimento pontue as respostas corretas.

    "Quem disse que não escrevo poesias? A diferença é que as minhas começam com using System;"

    sexta-feira, 17 de agosto de 2012 18:53
  • Evandro Oliveira Novais quanto a isto esta tudo bem...
    Mesmo assim não estou a consegui executar....


    danilo marques

    sexta-feira, 17 de agosto de 2012 19:23
  • Evandro Oliveira Novais quanto a isto esta tudo bem...
    Mesmo assim não estou a consegui executar....


    danilo marques

    veja 

    http://webmaicon.wordpress.com/2009/01/15/criando-uma-simples-classe-session-em-aspnet-c/

    http://social.msdn.microsoft.com/Forums/pt/aspnetpt/thread/e6ff2d5e-5d6c-4d13-8702-4758b518ab98


    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC

    segunda-feira, 20 de agosto de 2012 12:37
    Moderador
  • faz assim

    int codempr = Convert.ToInt32(Session["nome da sessao"]);


    Junior

    segunda-feira, 20 de agosto de 2012 12:59
  • Malta obrigado pela ajuda...
    Consegui resolver o problema..


    using System.Data.SqlClient;
    
    
        public partial class Default : System.Web.UI.Page
        {
            conexao conexao = new conexao();
            SqlDataReader leitura;
            SqlCommand comando = new SqlCommand();
    
            protected void Page_Load(object sender, EventArgs e)
            {
    
            }
    
            protected void iniciarlBtn_Click(object sender, EventArgs e)
            {
                InciarLogin();
            }
    
            public void InciarLogin()
            {
    
                String consulta = "select idUsuarios from Usuarios where nomeUsuario = @nomeUsuario and senha = @senha";
    
                comando.CommandType = System.Data.CommandType.Text;
                comando.Parameters.AddWithValue("@nomeUsuario", Txtnomelg.Text);
                comando.Parameters.AddWithValue("@senha", Txtsenhalg.Text);
                comando.Connection = conexao.Conectar();
                leitura = comando.ExecuteReader();
                if (leitura.Read())
                {
                           Session["logar"] = Txtnomelg.Text;
                            Session["logar"] = leitura.GetValue(0).ToString();
                            Response.Redirect("/Administrativa/admistrativaPrincipal.aspx");
    
    
                        }
                       
    
                else
                {
                    Response.Redirect("ErroLogin.aspx");
                }
    
                conexao.Conectar().Close();
            }
        }
    }


    Depois é só colocar uma label nas paginas privada que vais fazer o insert, a label é para receber o valor da sessão que trais  o id do usuário.
     lblUsuario.Text = Session["logar"].ToString();


                                                                                          

    danilo marques

    segunda-feira, 10 de dezembro de 2012 02:08