none
Saber el ID del usuario actual RRS feed

  • Pregunta

  • hola,

    en un hilo diferente me colocaron la forma de generar un ticket de autenticacion pero en realidad lo que necesito es una forma de obtener el ID del usuario que ha iniciado sesion en mi pagina web.

    Lo que estoy realizando es lo siguiente:

    tomo el email y el password, los comparo contra mi base de datos y si es usuario le muestro cierto menù, sino se le muestra un menu diferente.

    Y necesito saber el ID de ese usuario para cambiar algunos datos segun el usario que inicie sesion, si es cliente, o es nuevo, vendedor...segun el caso debo mostrarle un  precio, el producto tiene 5 precios que se usan dependiendo del tipo de usuario.

    Gracias por su ayuda,



    Joe Nuñez Yaguna


    • Editado Joe Nuñez jueves, 8 de agosto de 2013 20:18 mas explicito
    jueves, 8 de agosto de 2013 20:18

Respuestas

  • necesito saber el ID de ese usuario para cambiar algunos datos segun el usario que inicie sesion

    pero eso lo recuperas con una query, imagino que si usas el mail para autenticar entonces este debera ser unico para cada usuario

    por lo que podrias usar

    SELECT id, tipousuario FROM Usuarios WHERE mail = @mail

    por supuesto esto lo harias solo una vez luego de autenticar, despues seguirias usando el id y el tipousuario que recuperaste y guardaste en el ticket de seguridad

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Joe Nuñez lunes, 12 de agosto de 2013 14:31
    viernes, 9 de agosto de 2013 6:14
  • Hola.

    Por qué no creas una función que te retorne el id, por ejemplo:

    
    
    Public Function Busqueda_Id(Correo As String) As Integer
    	Dim sql As String = "SELECT id, Correo FROM User WHERE Correo = @Correo"
    
    	Dim cmd As New SqlCommand(sql, conn)
    
    	cmd.Parameters.AddWithValue("Correo", Correo)
    
    	Dim reader As SqlDataReader = cmd.ExecuteReader()
    
    	Dim id As Integer = 0
    
    	If reader.Read() Then
    		id = Convert.ToInt32(reader("id"))
    	End If
    
    	reader.Close()
    
    	Return id
    End Function
    



    • Editado P. Mata viernes, 9 de agosto de 2013 6:40
    • Marcado como respuesta Joe Nuñez lunes, 12 de agosto de 2013 14:31
    viernes, 9 de agosto de 2013 6:39

Todas las respuestas

  • necesito saber el ID de ese usuario para cambiar algunos datos segun el usario que inicie sesion

    pero eso lo recuperas con una query, imagino que si usas el mail para autenticar entonces este debera ser unico para cada usuario

    por lo que podrias usar

    SELECT id, tipousuario FROM Usuarios WHERE mail = @mail

    por supuesto esto lo harias solo una vez luego de autenticar, despues seguirias usando el id y el tipousuario que recuperaste y guardaste en el ticket de seguridad

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Joe Nuñez lunes, 12 de agosto de 2013 14:31
    viernes, 9 de agosto de 2013 6:14
  • Hola.

    Por qué no creas una función que te retorne el id, por ejemplo:

    
    
    Public Function Busqueda_Id(Correo As String) As Integer
    	Dim sql As String = "SELECT id, Correo FROM User WHERE Correo = @Correo"
    
    	Dim cmd As New SqlCommand(sql, conn)
    
    	cmd.Parameters.AddWithValue("Correo", Correo)
    
    	Dim reader As SqlDataReader = cmd.ExecuteReader()
    
    	Dim id As Integer = 0
    
    	If reader.Read() Then
    		id = Convert.ToInt32(reader("id"))
    	End If
    
    	reader.Close()
    
    	Return id
    End Function
    



    • Editado P. Mata viernes, 9 de agosto de 2013 6:40
    • Marcado como respuesta Joe Nuñez lunes, 12 de agosto de 2013 14:31
    viernes, 9 de agosto de 2013 6:39