RegistrationWindow.xaml.cs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. using System;
  2. using System.Windows;
  3. using System.Data.SqlClient;
  4. using System.Data;
  5. using System.Configuration;
  6. namespace Курсовой_проект_3._1
  7. {
  8. /// <summary>
  9. /// Логика взаимодействия для RegistrationWindow.xaml
  10. /// </summary>
  11. public partial class RegistrationWindow : Window
  12. {
  13. string connectionString;
  14. public RegistrationWindow()
  15. {
  16. InitializeComponent();
  17. connectionString = ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString;
  18. }
  19. private void AuthLink_Click(object sender, RoutedEventArgs e)
  20. {
  21. Authorization wnd = new Authorization();
  22. wnd.Show();
  23. Close();
  24. }
  25. private void RegBtn_Click(object sender, RoutedEventArgs e)
  26. {
  27. string login = LoginTB.Text.Trim();
  28. string password = PasswordPB.Password.Trim();
  29. string nickname = NicknameTB.Text.Trim();
  30. string fname = FNameTB.Text.Trim();
  31. string lname = LNameTB.Text.Trim();
  32. string mname = MNameTB.Text.Trim();
  33. string birthday = BirthdayDP.Text;
  34. // проверка на заполненость всех полей
  35. if (login == "" || password == "" || nickname == "" || fname == "" || lname == "" || mname == "" || birthday == "")
  36. {
  37. MessageBox.Show("Все поля должны быть заполнены!");
  38. return;
  39. }
  40. SqlConnection connection = null;
  41. try
  42. {
  43. connection = new SqlConnection(connectionString);
  44. connection.Open();
  45. // проверка на существование такого же логина в БД
  46. DataTable dt = new DataTable();
  47. SqlDataAdapter adapter = new SqlDataAdapter();
  48. string sqlQuery = "SELECT * FROM Users WHERE Login = '" + login + "';";
  49. SqlCommand command = new SqlCommand(sqlQuery, connection);
  50. adapter.SelectCommand = command;
  51. adapter.Fill(dt);
  52. if (dt.Rows.Count > 0)
  53. {
  54. MessageBox.Show("Такой логин уже существует!");
  55. LoginTB.Text = "";
  56. return;
  57. }
  58. // добавление нового пользователя в БД
  59. string sqlQuery1 = "INSERT INTO Users (Login, Password, FName, LName, MName, Nickname, Birthday) VALUES(N'" + login + "', N'" + password + "', N'" + fname + "', N'" + lname + "', N'" + mname + "', N'" + nickname + "', '" + birthday + "')";
  60. SqlCommand command1 = new SqlCommand(sqlQuery1, connection);
  61. command1.ExecuteNonQuery();
  62. // возврат к авторизации
  63. MessageBox.Show("Регистрация прошла успешно!");
  64. Authorization wnd = new Authorization();
  65. wnd.Show();
  66. Close();
  67. }
  68. catch (Exception ex)
  69. {
  70. MessageBox.Show(ex.Message);
  71. }
  72. finally
  73. {
  74. if (connection != null)
  75. {
  76. connection.Close();
  77. }
  78. }
  79. }
  80. }
  81. }