Foros del Web » Programando para Internet » ASPX (.net) »

Nombre del Usuario

Estas en el tema de Nombre del Usuario en el foro de ASPX (.net) en Foros del Web. Buenas tardes, espero que me puedan ayudar con esto: Tengo una pagina de inicio de sesion y ahi tengo 2 textbox y un boton le ...
  #1 (permalink)  
Antiguo 09/05/2007, 13:52
Avatar de sniper_lcd  
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 2
Nombre del Usuario

Buenas tardes, espero que me puedan ayudar con esto:

Tengo una pagina de inicio de sesion y ahi tengo 2 textbox y un boton
le doy mi nombre de usuario y mi contraseña y clickeo, y valida que sea correcto bla, bla, cuando es correcto, hago un response.redirect a la pagina principal

y mi pregunta es, como puedo mandar los datos que yo escribi en los textbox de la de inicio para la pagina principal, porque lo que quiero es que con los datos que yo escribi en la de inicio, hacer una consulta para traer el nombre del usuario y mostrarlo como
Bienvenido "Usuario"

Espero que tenga chance de ayudarme y espero que me hayan entendido
todas sus respuestas son bienvenidas

Saludos
  #2 (permalink)  
Antiguo 10/05/2007, 07:58
Avatar de sniper_lcd  
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 2
Re: Nombre del Usuario

Hola, soy yo mismo jaja, solo para informarles que ya descubri como de hace

hay que declarar una variable de sesion, en algunas paginas mencionan que no es muy conveniente usarlas, pero en mi caso si me ayudan, para hacer una variable de sesion es

Session("Variable")= valor

y para tomar el valor de esa variable es al reves

valor = Session("Variable")


y ya....
Saludos
JL

Última edición por sniper_lcd; 10/05/2007 a las 07:59 Razón: Error en el texto
  #3 (permalink)  
Antiguo 10/05/2007, 13:16
Avatar de jabi  
Fecha de Ingreso: noviembre-2006
Mensajes: 120
Antigüedad: 17 años, 6 meses
Puntos: 1
Re: Nombre del Usuario

Por si alguien no quiere usar las variables que comentas, otra forma de hacerlo es colocar el siguiente código (C#) al pulsar el botón:

Código:
 Response.Redirect("paginaDestino.aspx?nombre="+TextBox1.Text);
(o bien cambiando Response.Redirect por Server.Transfer, si queremos que no se vea el parámetro en la barra de direciones)

...donde TextBox1 es la caja de texto que contiene el nombre. Y por último recibir el parámetro en el procedimiento Page_Load de la página de destino, por ejemplo mostrándolo en un Label:

Código:
Label1.Text = "Bienvenido " + Request.Params["nombre"];
Saludos.
__________________
No estoy aquí de vacaciones, creéme.
  #4 (permalink)  
Antiguo 11/05/2007, 01:49
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 6 meses
Puntos: 4
Re: Nombre del Usuario

También puedes hacer lo siguiente. En el formulario en el que el usuario introduce sus datos y los validas creas un ticket de autenticación. Este ticket lo enviarás en forma de cookie al cliente.
Código:
....
FormsAuthentication.Initialize()
                    ' Se crea el ticket con el rol que le corresponda
                    Dim ticket As New FormsAuthenticationTicket(1, _
                            nombreUsuario, DateTime.Now, _
                            DateTime.Now.AddMinutes(20), _
                            True, roles, _
                            FormsAuthentication.FormsCookiePath)
                    ' Se encripta el ticket
                    Dim encTicket As String = FormsAuthentication.Encrypt(ticket)
                    ' Se crea la cookie con el ticket encriptado
                    Dim cookie As New HttpCookie(FormsAuthentication.FormsCookieName, encTicket)
                    ' Caducidad de la cookie igual que el ticket
                    'cookie.Expires = ticket.Expiration
                    ' Se envía la cookie
                    Response.Cookies.Add(cookie)
                    ' Se redirige al usuario
                    Response.Redirect(Request.QueryString("ReturnUrl"))
...
Luego, desde cualquier parte del sitio y siempre que no haya caducado el ticket puedes acceder al nombre de usuario de esta manera:
Código:
Dim nombreUsuario As String = Context.User.Identity.Name
No olvides poner esto en el archivo global.asax:
Código:
    Sub Application_AuthenticateRequest(ByVal sender As Object, ByVal e As EventArgs)
        ' Se desencadena al intentar autenticar el uso
        If Not (HttpContext.Current.User Is Nothing) Then
            If HttpContext.Current.User.Identity.IsAuthenticated Then
                If TypeOf HttpContext.Current.User.Identity Is FormsIdentity Then
                    Dim id As FormsIdentity = CType(HttpContext.Current.User.Identity, FormsIdentity)
                    Dim ticket As FormsAuthenticationTicket = id.Ticket
                    Dim userData As String = ticket.UserData
                    Dim roles() As String = userData.Split(",")
                    HttpContext.Current.User = New GenericPrincipal(id, roles)
                End If
            End If
        End If
    End Sub
Es un poco más largo pero luego el acceso es más rápido y sin recurrir a variables de sesión.

Un saludo.

PD: A ver si le podéis echar un vistacillo a mi problemilla.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #5 (permalink)  
Antiguo 04/01/2008, 10:33
 
Fecha de Ingreso: marzo-2007
Mensajes: 538
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Nombre del Usuario

Cita:
Iniciado por jabi Ver Mensaje
Por si alguien no quiere usar las variables que comentas, otra forma de hacerlo es colocar el siguiente código (C#) al pulsar el botón:

Código:
 Response.Redirect("paginaDestino.aspx?nombre="+TextBox1.Text);
(o bien cambiando Response.Redirect por Server.Transfer, si queremos que no se vea el parámetro en la barra de direciones)

...donde TextBox1 es la caja de texto que contiene el nombre. Y por último recibir el parámetro en el procedimiento Page_Load de la página de destino, por ejemplo mostrándolo en un Label:

Código:
Label1.Text = "Bienvenido " + Request.Params["nombre"];
Saludos.
¿que diferencia hay entre Response.Redirect y FormsAuthentication.RedirectFromLoginPage?

yo utilizo FormsAuthentication.RedirectFromLoginPage(this.tb_ usuario.Text, true);

¿tambien puedo utilizar el Request.Params["nombre"];?, supongo que habrá otra manera de utilizarlo.
A ver si sabeis cual es...

Gracias por adelantado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:05.