Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/40: Рейтинг темы: голосов - 40, средняя оценка - 4.85
Человек
1 / 1 / 0
Регистрация: 05.05.2018
Сообщений: 66

Переход на форму после удачной авторизации

14.06.2018, 14:09. Показов 7572. Ответов 2

Студворк — интернет-сервис помощи студентам
Привет всем.
Надо сделать так, чтобы после успешной авторизации переходило на следующую форму,
при этом окно авторизации закрывалось.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
using MySql.Data.MySqlClient;
using System;
using System.Windows.Forms;
 
namespace Chat_Rel0ad
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            string usernameCheck = textBox1.Text;
            string passwordCheck = textBox2.Text;
            string conparms = "Database=имя БД; DataSource=линк на хост; User ID=юзер; Password=пасс"; // подключаемся к БД
            string checkcmd = $"Select * from login where username='{usernameCheck}' and password='{passwordCheck}'";
            MySqlConnection one = new MySqlConnection(conparms);
            MySqlCommand check = new MySqlCommand(checkcmd, one);
            one.Open(); // начинаем проверку данных
            check.Prepare();
            check.ExecuteNonQuery();
            if (usernameCheck == (string)check.ExecuteScalar())
            {
                one.Close(); // заканчиваем проверку
                MessageBox.Show("Добро пожаловать :3");  // при удачной авторизации
            }
 
            else
            {
                one.Close();
                MessageBox.Show("Шо за НН пытается войти?)"); // при неудачном входе
            }
        }
 
        private void button2_Click(object sender, EventArgs e) // тута регистрация путем прямого добавления в БД 
        {
            string usernameAdd = textBox1.Text;
            string passwordAdd = textBox2.Text;
            string conparms = "Database=имя БД; DataSource=линк на хост; User ID=юзер; Password=пасс";
            string cmdadd = $"Insert into login(username, password) values('{usernameAdd}', '{passwordAdd}')";
            MySqlConnection two = new MySqlConnection(conparms);
            MySqlCommand add = new MySqlCommand(cmdadd, two);
            two.Open();
            add.Prepare();
            add.ExecuteNonQuery();
            two.Close();
            MessageBox.Show("Регистрация прошла успешно!");
        }
    }
}
Как это реализовать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
14.06.2018, 14:09
Ответы с готовыми решениями:

Переход на главную страницу после авторизации
Что я сделал не так ? после ввода логина и пароля, не осуществляется переход. Просто скидывает на этй же страницу с авторизацией. ...

Kак получить куки при удачной авторизации на сайте
Здравствуйте! Помогите вытащить куки. Я авторизуюсь на сайте, если авторизация удачна я получаю куки так вот как мне вытащить эти куки...

Переход после авторизации на нужную страницу не осуществляется
Здрасти, вот сделал форму логина, но после авторизации не переходит на нужную страницу, возвращает на авторизацию, но логин и пароль...

2
 Аватар для andrey_f
884 / 537 / 228
Регистрация: 21.02.2011
Сообщений: 5,705
14.06.2018, 14:54
Цитата Сообщение от DrStealed Посмотреть сообщение
Как это реализовать?
Ответы на 7 самых частых вопросов по WinForms
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
14.06.2018, 16:45
DrStealed, чтобы именно закрывалось, а не осталось скрытым, как часто делают, лучше переделать Main по следующему образцу
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[STAThread]
static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
 
    using (var authForm = new Form1())
    {
        if (authForm.ShowDialog() != DialogResult.OK)
        {
            return;
        }
    }
 
    // Форма идущая после авторизации
    Application.Run(new Form2());
}
Форма авторизации должна при успешной проверке выставить свой DialogResult = OK.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using MySql.Data.MySqlClient;
using System;
using System.Windows.Forms;
 
namespace Chat_Rel0ad
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        const string ConnectionString = "Database=имя БД; DataSource=линк на хост; User ID=юзер; Password=пасс";
 
        private void button1_Click(object sender, EventArgs e)
        {
            if (CheckUsernameAndPassword(textBox1.Text, textBox2.Text))
            {
                MessageBox.Show("Добро пожаловать :3");  // при удачной авторизации
                DialogResult = DialogResult.OK;
                Close();
            }
            else
            {
                MessageBox.Show("Шо за НН пытается войти?)"); // при неудачном входе
            }
        }
 
        private void button2_Click(object sender, EventArgs e) // тута регистрация путем прямого добавления в БД 
        {
            Register(textBox1.Text, textBox2.Text);
            MessageBox.Show("Регистрация прошла успешно!");
        }
 
        static bool CheckUsernameAndPassword(string username, string password)
        {
            using (MySqlConnection one = new MySqlConnection(ConnectionString))
            {
                string checkcmd = "Select count(*) from login where username=@username and password=@password";
                MySqlCommand check = new MySqlCommand(checkcmd, one);
                check.Parameters.AddWithValue("@username", username);
                check.Parameters.AddWithValue("@password", password);
                one.Open(); // начинаем проверку данных
                check.Prepare();
                return 1 == (long)check.ExecuteScalar();
            }
        }
 
        static void Register(string username, string password)
        {
            using (MySqlConnection two = new MySqlConnection(ConnectionString))
            {
                string cmdadd = "Insert into login(username, password) values(@username, @password)";
                MySqlCommand add = new MySqlCommand(cmdadd, two);
                add.Parameters.AddWithValue("@username", username);
                add.Parameters.AddWithValue("@password", password);
                two.Open();
                add.Prepare();
                add.ExecuteNonQuery();
            }
        }
    }
}
Обрати особое внимание на использование параметров в запросах. Именно так нужно выполнять запросы.
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.06.2018, 16:45
Помогаю со студенческими работами здесь

Переход по сайту и получение html после авторизации
Метод авторизации private string post(string URL, string formData) { HttpWebRequest request =...

Как сделать чтобы открывалась вторая форма при удачной авторизации
Программа имеет вот такой код: Public Class Form1 Private Sub Button1_Click(sender As Object, e As EventArgs) End...

Скрыть форму после авторизации
как написать что бы форма авторизации скрылась после успешной авторизации <?php session_start(); // Стартуем сессию ?> ...

После входа заново возвращает на форму авторизации
есть вот такая штука(смотри ниже). Короч цель проста- авторизовался и получаешь доступ к контенту, ну и данные пользователя пишу в сессию....

После нажатия на кнопку зарегистрироваться перекидывает на форму авторизации
хочу сделать сделать регистрацию пользователей на сайте. создал 3 файла bd.php, save_user.php, testreg.php. Сделал переопределение ,изменил...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru