5 кроків для створення простої форми входу на C#

  • 26 марта, 13:35
  • 3988
  • 0

Багато додатків вимагають авторизації для повноцінного використання. Сьогодні ми напишемо просту форму авторизації Windows-додатків на мові C #.

Крок 1. Створення бази

Насамперед створимо нову базу даних test для зберігання тестової інформації. Додайте таблицю user з наступними полями:

  1. id(INT) c атрибутом AUTO_INCREMENT;
  2. name (VARCHAR (100));
  3. title (VARCHAR (100));
  4. address (VARCHAR (100)).

5 кроків для створення простої форми входу на C#

Створення таблиці user в базі даних test

Крок 2. Створення проекту

Створіть проект для нового додатка. У Visual Studio для цього потрібно зайти в меню File> New> Project.

5 кроків для створення простої форми входу на C#

Створення нового проекту в Visual Studio

Після цього з'явиться вікно New Project:

5 кроків для створення простої форми входу на C#

Вікно New Project в інтерфейсі Visual Studio

В поле Name потрібно вписати назву вашого проекту, в поле Location- вказати потрібну директорію, в Solution name - ввести назву рішення. Заповнили дані - натискаємо OK.

5 кроків для створення простої форми входу на C#

Головний клас нового проекту в Visual Studio

Крок 3. Створення інтерфейсу

Створіть представлення майбутньої форми авторизації, як показано на малюнку нижче. Додайте два поля ( username і password) і кнопку для входу.

5 кроків для створення простої форми входу на C#

Крок 4. Налаштування з'єднання з базою

Створіть клас connection для настройки з'єднання з базою. Приклад реалізації представлений в лістингу нижче:      

using System;  
using System.Collections.Generic;  
using System.Linq;  
using System.Text;  
using MySql.Data.MySqlClient;  
using System.Windows.Forms;  
using System.Data;namespace Connection_DB  
{  
    class connection  
    {  

        MySql.Data.MySqlClient.MySqlConnection conn;  
        string myConnectionString;  
        static string host = "localhost";  
        static string database = "test";  
        static string userDB = "ecco";  
        static string password = "password";  
        public static string strProvider = "server=" + host + ";Database=" + database + ";User ID=" + userDB + ";Password=" + password;

        public bool Open()  
        {  
            try  
            {  
                strProvider = "server=" + host + ";Database=" + database + ";User ID=" + userDB + ";Password=" + password;  
                conn = new MySqlConnection(strProvider);  
                conn.Open();  
                return true;  
            }  
            catch (Exception er)  
            {  
                MessageBox.Show("Connection Error ! " + er.Message, "Information");  
            }  
            return false;  
        }        public void Close()  
        {  
            conn.Close();  
            conn.Dispose();  
        }        public DataSet ExecuteDataSet(string sql)  
        {  
            try  
            {  
                DataSet ds = new DataSet();  
                MySqlDataAdapter da = new MySqlDataAdapter(sql, conn);  
                da.Fill(ds, "result");  
                return ds;  
            }  
            catch (Exception ex)  
            {  
                MessageBox.Show(ex.Message);  
            }  
            return null;  
        }        public MySqlDataReader ExecuteReader(string sql)  
        {  
            try  
            {  
                MySqlDataReader reader;  
                MySqlCommand cmd = new MySqlCommand(sql, conn);  
                reader = cmd.ExecuteReader();  
                return reader;  
            }  
            catch (Exception ex)  
            {  
                MessageBox.Show(ex.Message);  
            }  
            return null;  
        }        public int ExecuteNonQuery(string sql)  
        {  
            try  
            {  
                int affected;  
                MySqlTransaction mytransaction = conn.BeginTransaction();  
                MySqlCommand cmd = conn.CreateCommand();  
                cmd.CommandText = sql;  
                affected = cmd.ExecuteNonQuery();  
                mytransaction.Commit();  
                return affected;  
            }  
            catch (Exception ex)  
            {  
                MessageBox.Show(ex.Message);  
            }  
            return -1;  
        }  
    }  
} 

Крок 5. Код авторизації

Нарешті, поверніться до форми і додайте наступний код:

using System;  
using System.Collections.Generic;  
using System.ComponentModel;  
using System.Data;  
using System.Drawing;  
using System.Linq;  
using System.Text;  
using System.Windows.Forms;  
using MySql.Data.MySqlClient;namespace Connection_DB  
{  
    public partial class Form1 : Form  
    {  
        connection con = new connection();  
        string id, username, password, firstname, lastname, address;  
        public Form1()  
        {  
            InitializeComponent();  
        }        private void btnLogin_Click(object sender, EventArgs e)  
        {  
            try  
            {                if (txtUsername.Text != "" && txtPassword.Text != "")  
                {  

                    con.Open();  
                    string query = "select id,username,password,firstname,lastname,address from user WHERE username ='" + txtUsername.Text + "' AND password ='" + txtPassword.Text + "'";  
                    MySqlDataReader row;  
                    row = con.ExecuteReader(query);  
                    if (row.HasRows)  
                    {  
                        while (row.Read())  
                        {  
                            id = row["id"].ToString();  
                            username = row["username"].ToString();  
                            password = row["password"].ToString();  
                            firstname = row["firstname"].ToString();  
                            lastname = row["lastname"].ToString();  
                            address = row["address"].ToString();  

                        }                        MessageBox.Show("Data found your name is " + firstname + " " + lastname + " " + " and your address at " + address);  
                    }  
                    else  
                    {  
                        MessageBox.Show("Data not found", "Information");  
                    }  
                }  
                else  
                {  
                    MessageBox.Show("Username or Password is empty", "Information");  
                }  
            }  
            catch  
            {  
                MessageBox.Show("Connection Error", "Information");  
            }            
        }  
    }  
}

Результат

Натисніть F5, щоб запустити програму. Якщо з'єднання з базою даних успішно встановиться, ви побачите тільки що створену форму.

5 кроків для створення простої форми входу на C#

Інтерфейс працюючої програми

Вихідний код цієї простої форми авторизації ви знайдете на Github .

Джерело перекладу


0 комментариев
Сортировка:
Добавить комментарий