If-заявление для кнопки входа - PullRequest
1 голос
/ 24 июня 2011

Я новичок в Visual Studio 2010. Я создаю форму входа и в форме входа есть поле со списком и текстовое поле. Пункты в выпадающем списке - это список должностей сотрудников. Всякий раз, когда пользователь нажимает кнопку входа в систему, в кнопке входа в систему должно быть выражение if, чтобы в определенной позиции сотрудников открывались формы. Пожалуйста помоги.

Это скриншот:

enter image description here

Это код:

private void loginbutton_Click(object sender, EventArgs e)
    {

        string MyConString = "SERVER=localhost;" + "DATABASE=timekeeping;" + "UID=root;" + "PASSWORD=admin;";
        MySqlConnection connection = new MySqlConnection(MyConString);
        MySqlCommand command = connection.CreateCommand();
        MySqlDataReader Reader;
        command.CommandText = "select username, password from users";
        connection.Open();
        Reader = command.ExecuteReader();
        while (Reader.Read())
        {
            if (username_login.Text == Reader[0].ToString() && password_login.Text == Reader[1].ToString().Trim())
            {
                username = Reader[0].ToString();
                password = Reader[1].ToString();
            }
        }

        if (username_login.Text == username && password_login.Text == password.Trim())
        {
            this.Hide();
            Home form = new Home();
            //form.userSession(lname, fname);
            form.Show();
        }
        else MessageBox.Show("Invalid User", "Login Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        connection.Close();
    }

Я еще не включил поле со списком, потому что я не знаю, что сюда вставить.

Ответы [ 2 ]

4 голосов
/ 24 июня 2011

Я думаю, вам нужно пересмотреть свой дизайн:

Было бы лучше, если бы вы сохранили роли (позиции) пользователей в базе данных /.

Если кто-то правильно идентифицирует себязагрузите роли для этого пользователя, а затем откройте правильную форму / приложение.Не позволяйте пользователю выбирать свою роль.

Посмотрите на провайдеров членства и ролей они не только для ASP.NET, вы также можете использовать их в Winforms:

Отличный набор учебников:

0 голосов
/ 24 июня 2011

Как что-то вроде следующего:

        Form mainForm;

        switch (comboBox1.SelectedText)
        {
            case "Individual employees":
                mainForm = new EmployeesForm();
                break;
            case "HR":
                mainForm = new HRForm();
                break;
            case "Manager":
                mainForm = new ManagerForm();
                break;
            case "Supervisor":
                mainForm = new SupervisorForm();
                break;
            default:
                mainForm = new DefaultForm();
                break;
        }

        mainForm.Show();

При этом используется условный оператор, называемый switch , который обрабатывает несколько выборок, передавая управление одному из операторов case в своем теле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...