Ver Mensaje Individual
  #6 (permalink)  
Antiguo 28/09/2010, 09:41
Avatar de triqui
triqui
 
Fecha de Ingreso: diciembre-2008
Ubicación: Zaragoza(España)
Mensajes: 624
Antigüedad: 16 años, 3 meses
Puntos: 31
Respuesta: Login en ASP.Net

Cita:
Iniciado por Malenko Ver Mensaje
En todo caso? Pero si te lo ha resuelto! Obviamente el código que te puso no compilaba porque puso el pseudocódigo, aunque te puso toda la sentencia en SQL. Vamos que solo tenias que poner las llamadas a las funciones de acceso a base de datos.
Es tal como dice Malenko, no te puse el código

He mirado un poco tu código y te cuento un cambio que haría, aunque tu manera esta bien

Aqui estas recogiendo datos que no usas, todos los campos de la tabla Usuario.

Código ASP:
Ver original
  1. Dim consulta As New SqlCommand("select * from Usuarios WHERE userUsuario ='" & usuario & "' AND userContraseña ='" & contraseña & "' AND userEmpresa ='" & empresa & "'", myConn)

Y yo haría esto
Código ASP:
Ver original
  1. Dim consulta As New SqlCommand("IF((select count(*) from Usuarios WHERE userUsuario ='" & usuario & "' AND userContraseña ='" & contraseña & "' AND userEmpresa ='" & empresa & "'") >0) Select 'Correcto' Else Select 'Incorrecto', myConn)
(La select está sin probar)

Porque hago esto?
1.- No me traigo todos los datos (mejor para la bbdd):-p
2.- Si la consulta te arroja algún tipo de advertencia ó error, el objeto leerbd.Read (de esta realmente no estoy seguro, creeria que no.) por si las moscas.
3.- Y Valido a nivel de base de datos la condición.



Y cuando tu pones esto:

Código ASP:
Ver original
  1. Dim leerbd As SqlDataReader = consulta.ExecuteReader()
  2.         If leerbd.Read <> False Then
  3.             aceptado = True
  4.         Else
  5.             aceptado = False
  6.         End If
  7.         If aceptado = True Then
  8.             lblResult.Text = "Entra"
  9.         Else
  10.             lblResult.Text = "no entra"
  11.         End If


Recoges los datos así.

Código ASP:
Ver original
  1. Dim leerbd As SqlDataReader = consulta.ExecuteReader()
  2. Dim validacion As String
  3. while ( myReader.Read ( ) ) {
  4.    validacion = myReader.GetString(1)
  5. }
  6.  
  7. myReader.Close ( );
  8. myConn.Close ( );
  9.  
  10.         If validacion == "Correcto" Then
  11.              lblResult.Text = "Entra"
  12.              //Response.Redirect("~/PaginaUsuario.aspx?User=Usuario")
  13.         Else
  14.             lblResult.Text = "no entra"
  15.         End If

Tu manera está bien, aunque era otra forma.
__________________
La nueva red social de quinielas quiniela resultados
Cazaresultados Futbol base en directo