You are on page 1of 4

Un pequeo ejemplo de como crear un login utilizando una base de datos.

Desarrollo: Necesitamos crear dos formularios el primero llamado Login, el segundo Principal que ser al que queremos acceder si la contrasea es correcta. Para el login necesitamos crear el formulario tal como se muestra en la imagen principal:

Teniendo siempre en cuanta que se debe de cambiar la propiedadname a cada uno de los controles, para poder tener mayor control sobre el formulario cuando se esta programando. En forma de validacin he dejado la propiedad Eenable del botn iniciar en Falseesto servir para no ejecutar el codigo que se encuentra en el sin antes tener llenos los textbox, de lo contrario dara un error. Para el formulario Principal:

Este formulario no tiene ninguna funcin especial nada mas sirve para poder verificar que el login se ha hecho correctamente. En el caso de crear un sistema este podra ser el men principal un formulario MDI por ejemplo. Pero basta con este para hacer la demostracin.

CODIFICACIN Crear la base de datos, la tabla con sus campos y llenando con un registro por lo menos. Al descargar el proyecto trae el scrip de la base de datos. Se puede ejecutar y listo(Por defecto el usuario es fernando y la contrasea es pepito). NOTA en el cdigo esta la conexin a la base de datos ese cdigo es suficiente para que pueda funcionar en cualquier computadora. Formulario Login:
01 using System; 02 using System.Collections.Generic; 03 using System.ComponentModel; 04 using System.Data; 05 using System.Drawing; 06 using System.Linq; 07 using System.Text; 08 using System.Windows.Forms; 09 using System.Data.SqlClient;//necesario para poder acceder a SQL 10 11 namespace Login 12 { 13 14 15 16 17 18 19 20 21 22 23 24 private void btnIniciar_Click(object sender, EventArgs e) { try { //creando la conexion public partial class Form1 : Form { public Form1() { InitializeComponent(); }

SqlConnection miConecion 25 = new SqlConnection(@"server=.\SQLEXPRESS; Initial Catalog = loginbd; Integrated Security=True;"); 26 //abriendo conexion 27 28 SqlCommand comando = new SqlCommand("select usuario, 29 contrasea from Tblusuario where usuario = '" + txtusuario.Text + "'And contrasea = '" + txcontrasea.Text + "' ", miConecion); 30 miConecion.Open();

//ejecuta una instruccion de sql devolviendo el numero de las filas afectadas 32 comando.ExecuteNonQuery(); 31 33 34 35 36 37 //Llenando el dataAdapter da.Fill(ds, "Tblusuario"); //utilizado para representar una fila de la tabla q 38 necesitas en este caso usuario 39 40 41 42 43 //evaluando que la contrasea y usuario sean correctos DataRow DR; DR = ds.Tables["Tblusuario"].Rows[0]; DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(comando);

if ((txtusuario.Text == DR["usuario"].ToString()) || (txcontrasea.Text == DR["contrasea"].ToString())) 44 { 45 46 47 48 49 50 51 52 53 54 mensaje } catch { //en caso que la contrasea sea erronea mostrara un principal this.Hide();//esto sirve para ocultar el formulario de login } //instanciando el formulario principal Principal frmPrincipal = new Principal(); frmPrincipal.Show();//abriendo el formulario

//dentro de los parentesis va: "Mensaje a 55 mostrar","Titulo de la ventana",botones a mostrar en ste caso OK, icono a mostrar en este caso uno de error MessageBox.Show("Error! Su contrasea y/o usuario 56 son invalidos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); 57 58 59 60 61 62 63 64 65 66 } private void btnCancelar_Click(object sender, EventArgs e) { //Salir de la aplicacion Application.Exit(); } }

67 68 69 70 71 72

private void txtusuario_TextChanged(object sender, EventArgs e) { //aca se activa el boton INICIAR btnIniciar.Enabled = true; } }

73 }

Para el Formulario principal en el boton salir nada mas: Application.Exit();

You might also like