ING. ROSEMERY PEREZ BUELOT Validando inicios de Sesión y Acceso con BD 1. Crear la BD denominada USUARIOS, dentro de ella crear la tabla USUARIO, con los siguientes registros 2. Crear un sitio Web denominada “validar_usuarios”, dentro insertar un formulario default.aspx, luego crear un formulario Web denominado “servicios.aspx” 3. Marcar la carpeta App_Code e insertar un nuevo elemento “Clase.vb” y colocarle como nombre variables, renombrar dicho archivo de la siguiente manera. Imports Microsoft.VisualBasic Public Module variables Public cadena As String = "" Public mascara As String = "" End Module 4. Diseñar en el formulario Web (default.aspx) lo siguiente. VISUAL.NET Página 1 ING. ROSEMERY PEREZ BUELOT 5. Programar los botones respectivos. ‘-----------------botón 0-------------------Protected Sub btn0_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn0.Click Dim n0 As String = "0" cadena = String.Concat(cadena, n0) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 1-------------------Protected Sub btn1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn1.Click Dim n1 As String = "1" cadena = String.Concat(cadena, n1) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 2-------------------Protected Sub btn2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn2.Click Dim n2 As String = "2" cadena = String.Concat(cadena, n2) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 3-------------------Protected Sub btn3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn3.Click Dim n3 As String = "3" cadena = String.Concat(cadena, n3) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 4-------------------Protected Sub btn4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn4.Click Dim n4 As String = "4" cadena = String.Concat(cadena, n4) txtpassword.Text = cadena‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub VISUAL.NET Página 2 ING. ROSEMERY PEREZ BUELOT ‘-----------------botón 5-------------------- Protected Sub btn5_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn5.Click Dim n5 As String = "5" cadena = String.Concat(cadena, n5) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 6-------------------Protected Sub btn6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn6.Click Dim n6 As String = "6" cadena = String.Concat(cadena, n6) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 7-------------------Protected Sub btn7_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn7.Click Dim n7 As String = "7" cadena = String.Concat(cadena, n7) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 8-------------------Protected Sub btn8_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn8.Click Dim n8 As String = "8" cadena = String.Concat(cadena, n8) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón 9-------------------Protected Sub btn9_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn9.Click Dim n9 As String = "9" cadena = String.Concat(cadena, n9) txtpassword.Text = cadena ‘eliminar luego mascara = String.Concat(mascara, "*") txtpassword.Text = mascara End Sub ‘-----------------botón cls-------------------Protected Sub btncls_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btncls.Click txtpassword.Text = "" cadena = "" mascara = "" mensaje.Text = "" End Sub VISUAL.NET Página 3 ING. ROSEMERY PEREZ BUELOT ‘-----------------cuando la pagina se carga por primera vez-------------------Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Not IsPostBack Then cadena = "" mascara = "" End If End Sub 6. Insertar un control SqlDataSource. 7. Dentro de su Propiedad. SelectQuery diseñar lo siguiente. VISUAL.NET Página 4 ING. ROSEMERY PEREZ BUELOT 8. Dentro del Botón Validar ‘Importar las librerias si es que no se encuentran las funciones ‘Escribir lo siguiente antes de la clase del formulario. Imports System.Data.SqlClient Imports System.Data.DataTable Protected Sub btn_validar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_validar.Click Dim estado_acceso As Integer Dim nivel_acceso As Integer Using cnn As New SqlConnection(Me.SqlDataSource1.ConnectionString) Dim filtro As String filtro = Me.SqlDataSource1.SelectCommand & "where nombre_usuario=@nombre_usuario and password=@password" Dim cmd As New SqlCommand(filtro, cnn) cnn.Open() ‘---agrego los parametros que se necesita para la consulta--cmd.Parameters.AddWithValue("@nombre_usuario", txt_usuario.Text) cmd.Parameters.AddWithValue("@password", cadena) Dim tabla As New Data.DataTable Dim da As New SqlDataAdapter(cmd) da.Fill(tabla) If tabla.Rows.Count = 0 Then mensaje.Text = " Usuario No existe" Exit Sub Else mensaje.Text = " Usuario encontrado" Session("codigo_usuario") = Tabla.Rows(0)("codigo_usuario").ToString Session("apellidos") = tabla.Rows(0)("apellidos").ToString Session("nombres") = tabla.Rows(0)("nombres").ToString Session("cargo") = tabla.Rows(0)("cargo").ToString Session("tipo_usuario") = tabla.Rows(0)("tipo_usuario").ToString Session("nombre_usuario") = Tabla.Rows(0)("nombre_usuario").ToString Session("password") = tabla.Rows(0)("password").ToString Session("estado_acceso") = tabla.Rows(0)("estado_acceso").ToString estado_acceso = tabla.Rows(0)("estado_acceso").ToString Session("nivel acceso") = tabla.Rows(0)("nivel_acceso").ToString nivel_acceso = tabla.Rows(0)("nivel_acceso").ToString End If End Using ‘---se evalua si el usuario tiene acceso al sistema VISUAL.NET Página 5 ING. ROSEMERY PEREZ BUELOT ‘Verificacion si el estado esta activo ‘si no esta activo se eliminara el inicio de sesión If estado_acceso = 0 Then mensaje.Text = "Usuario no Autorizado" Session.Abandon() Session.Clear() Session.RemoveAll() Else ‘si esta activo se le direcciona a la pagina siguiente Response.Redirect("servicios.aspx") End If End Sub 9. En la Pagina operaciones.aspx diseñar los siguiente. 10. programar dentro del proceso Load de la página operaciones.aspx lo siguiente. Partial Class operaciones Inherits System.Web.UI.Page ‘---varibales Dim param1 As Dim param2 As Dim param3 As Dim param4 As Dim param5 As Dim param6 As Dim param7 As Dim param8 As Dim param9 As VISUAL.NET para capturar los inicios de session--String String String String String String String String String Página 6 ING. ROSEMERY PEREZ BUELOT Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load param1 param2 param3 param4 param5 param6 param7 param8 param9 = = = = = = = = = CType(Session.Item("codigo_usuario"), String) CType(Session.Item("apellidos"), String) CType(Session.Item("nombres"), String) CType(Session.Item("cargo"), String) CType(Session.Item("tipo_usuario"), String) CType(Session.Item("nombre_usuario"), String) CType(Session.Item("password"), String) CType(Session.Item("estado_acceso"), String) CType(Session.Item("nivel acceso"), String) ‘---varificamos si hay un inicio de session ---If Session.Item("nombre_usuario") = "" Then Response.Redirect("Default.aspx") Else If Not IsPostBack Then Me.lbl_codigo.Text = param1 Me.lbl_apellidos.Text = param2 Me.lbl_nombres.Text = param3 Me.lbl_cargo.Text = param4 Me.lbl_tipousuario.Text = param5 Me.lbl_estadoacceso.Text = param8 Me.lbl_nivelacceso.Text = param9 '-------desactivo todos los botones--Me.btn_sumar.Enabled = False Me.btn_restar.Enabled = False Me.btn_mulplicar.Enabled = False Me.btn_dividir.Enabled = False Me.btn_logaritmos.Enabled = False Select Case param9 Case 1 '----activo los botones respectivos--Me.btn_sumar.Enabled = True Me.btn_restar.Enabled = True Me.btn_mulplicar.Enabled = False Me.btn_dividir.Enabled = False Me.btn_logaritmos.Enabled = False Case 2 Me.btn_sumar.Enabled = False Me.btn_restar.Enabled = False Me.btn_mulplicar.Enabled = True Me.btn_dividir.Enabled = True Me.btn_logaritmos.Enabled = False VISUAL.NET Página 7 ING. ROSEMERY PEREZ BUELOT Case 3 Me.btn_sumar.Enabled = False Me.btn_restar.Enabled = False Me.btn_mulplicar.Enabled = False Me.btn_dividir.Enabled = False Me.btn_logaritmos.Enabled = True Case 4 Me.btn_sumar.Enabled = True Me.btn_restar.Enabled = True Me.btn_mulplicar.Enabled = True Me.btn_dividir.Enabled = True Me.btn_logaritmos.Enabled = True End Select End If End If End Sub End Class VISUAL.NET Página 8