none
Login RRS feed

  • Pergunta

  • Alguem sabe me explicar como eu posso registar um cliente associado ao utilizador que efectou o Login?

    Existem vários clientes
    Existem vários users

    Quando user logado, o cliente que ele regista logo é dele.

    Alguem sabe? estou a fazer em asp.net.

    Obrigado

    segunda-feira, 2 de julho de 2012 23:02

Todas as Respostas

  • Assim que o usuário for logado com sucesso vc cria uma sessão que o identificará através do seu site, vc pode usar a sessão como o id da tabela do seu usuário.

    C#

    Session["codcliente"] = campostabela;

    em vb

    Session("codcliente") = campotabela;


    Junior

    terça-feira, 3 de julho de 2012 11:19
  • Já pensou em usar o membership?

    http://msdn.microsoft.com/en-us/library/6e9y4s5t.aspx


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

    • Sugerido como Resposta EduardoPiresMVP terça-feira, 3 de julho de 2012 13:47
    terça-feira, 3 de julho de 2012 13:11
    Moderador
  • Essa sessão que me indica crio a onde? na página de login? Em outra página se eu quiser associar o registo efectuado a um utilizador posso usar Session("codcliente") = campotabela;

    Eu tenho este código de login.

     Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim connectionstring = System.Configuration.ConfigurationManager.AppSettings("accessConn")
            Dim connection As New Data.OleDb.OleDbConnection(connectionstring)
            Dim qry As String = "Select * from utilizador where pass='" & TextBox2.Text & "' and user='" & TextBox1.Text & "'"
            Dim mycommand As New Data.OleDb.OleDbCommand(qry)
            'executar o comando na ligação de base dados
            mycommand.Connection = connection
            'abre a ligação da base dados
            connection.Open()
            'criar o apontador  para a linha da tabela
            Dim rs As Data.OleDb.OleDbDataReader = mycommand.ExecuteReader
            If rs.Read() Then
                'existem valores.... logo o login é valido
                'Label1.Text = "Bem vindo " & rs("nome")
                Session("nome") = rs("nome")
                Session("user") = rs("user")
                Response.Redirect("Home.aspx?nome=" & Session("nome"))
            Else
                'não existem valores
                Label1.Text = "Sfid ou password inválido"
            End If
            'fechar ligação à base dados
            connection.Close()
        End Sub
    End Class

    terça-feira, 3 de julho de 2012 13:44
  • Eu iria de membership, administrar sessões não é uma boa prática...

    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    Eduardo Pires
    www.eduardopires.net.br

           

    terça-feira, 3 de julho de 2012 13:49
  • Rubem aqui no código que vc postou vc ja cria sessão

     Session("nome") = rs("nome")
      Session("user") = rs("user")

    ai basta nas outras páginas no load vc verifica se essas sessões estão criadas e com conteudo, assim vc evita que um usuário digite o caminho todo na url e acesse uma página sem fazer login.


    Junior

    terça-feira, 3 de julho de 2012 13:56
  • O membership vai fazer com que o utilizador activo, ao registar um novo cliente, vai ficar registado identificado na tabela do utilizador o id de cliente que registou?

    Ou seja:

    Duas tabelas.

    Cliente        sfidcliente

    IDcliente     IDsfid

    NIF            PKIDNif

                     User

    terça-feira, 3 de julho de 2012 13:57
  • O Membership não vai fazer isso, quem vai fazer é você, mas o Membership irá lhe prover informação de quem é o usuário ativo.

    Por sessão também dá, mas é "porco"... rs...


    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    Eduardo Pires
    www.eduardopires.net.br

           

    terça-feira, 3 de julho de 2012 16:33
  • Conseguiu resolver sua dúvida?

    Se sim, marque uma resposta, caso não poste sua dúvida aqui.


    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    Eduardo Pires
    www.eduardopires.net.br

           

    segunda-feira, 16 de julho de 2012 11:32