Esempio n. 1
0
 // 更新已有用户的信息
 public static bool UpdateUserInfo(string old_login_name, UserInfo user_info)
 {
     // 旧用户不存在或新用户已存在,更新失败
     if (!IsUserRegistered(old_login_name) || IsUserRegistered(user_info.LoginName))
         return false;
     
     string string_of_update_user = string.Format("update `" + UserInfoTableName + "` set `LoginName` = '{0}', `Password` = '{1}', `UserName` = '{2}', " +
         "`Authority` = '{3}', `Sex`= '{4}', `Birthday`= '{5}', `Education` = '{6}', `Phone` = '{7}', `Email`='{8}', `StudentID`='{9}' where `LoginName` = '{10}';",
         user_info.LoginName, user_info.Password, user_info.UserName, Convert.ToInt32(user_info.Authority).ToString(),
         Convert.ToInt32(user_info.Sex).ToString(), user_info.Birthday.ToString("yyyy/MM/dd"), Convert.ToInt32(user_info.Education).ToString(),
         user_info.Phone, user_info.Email, user_info.StudentID, old_login_name);
     if (_DatabaseInUse == DatabaseType.MySql)
     {
         if (MySql.MySqlHelper.ExecuteCommand(string_of_update_user) != 1)
             return false;
         return true;
     }
     else
     {
         return false;
     }
 }
Esempio n. 2
0
        public static bool RegisterUserInfo(UserInfo user_info)
        {
            if (IsUserRegistered(user_info.LoginName))
                return false;

            string string_of_register_user = string.Format("insert into `" + UserInfoTableName +"` (`LoginName`,`Password`,`UserName`," + 
                "`Authority`,`Sex`,`Birthday`,`Education`,`Phone`,`Email`,`StudentID`) values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}');",
                user_info.LoginName, user_info.Password, user_info.UserName, Convert.ToInt32(user_info.Authority).ToString(),
                Convert.ToInt32(user_info.Sex).ToString(), user_info.Birthday.ToString("yyyy/MM/dd"), Convert.ToInt32(user_info.Education).ToString(),
                user_info.Phone, user_info.Email, user_info.StudentID);
            if (_DatabaseInUse == DatabaseType.MySql)
            {
                //ds = DBHelper.Query(sql);
                //foreach (DataRow dr in ds.Tables[0].Rows)
                //{
                //    DataColumn dc0 = dr.Table.Columns[0];//第一列是name
                //    DataColumn dc1 = dr.Table.Columns[1];  //第二列是Comment。详情可以参考sqlString的定义
                //    tableNameComments.Add(dr[dc0].ToString(), dr[dc1].ToString());
                    
                //}

                if(MySql.MySqlHelper.ExecuteCommand(string_of_register_user) != 1)
                    return false;
                return true;
            }
            else
            {
                return false;
            }
        }
Esempio n. 3
0
        public static bool GetUserInfo(string login_name, out UserInfo user_info)
        {
            string string_of_check_user = "******" +
                "`Authority`,`UserName`,`Sex`,`Birthday`,`Education`,`Phone`,`Email`,`StudentID` from `" + UserInfoTableName +
                "` where `LoginName`='" + login_name + "';";
            user_info = new UserInfo();

            if (_DatabaseInUse == DatabaseType.MySql)
            {
                DataSet dataset = MySql.MySqlHelper.ExecuteQuery(string_of_check_user);
                if (dataset.Tables[0].Rows.Count == 0)
                    return false;
                DataRow row = dataset.Tables[0].Rows[0];
                DataColumnCollection colums = dataset.Tables[0].Columns;
                user_info.LoginName = row[colums[0]].ToString();
                user_info.Password = row[colums[1]].ToString();
                user_info.Authority = (AuthorityType)(Convert.ToInt32(row[colums[2]].ToString()));
                user_info.UserName = row[colums[3]].ToString();
                user_info.Sex = (SexType)(Convert.ToInt32(row[colums[4]].ToString()));
                user_info.Birthday = Convert.ToDateTime(row[colums[5]].ToString());
                user_info.Education = (EducationType)(Convert.ToInt32(row[colums[6]].ToString()));
                user_info.Phone = row[colums[7]].ToString();
                user_info.Email = row[colums[8]].ToString();
                user_info.StudentID = row[colums[9]].ToString();
                return true;
            }
            else
            {
                return false;
            }
        }
Esempio n. 4
0
        private void BtnRegister_Click(object sender, RoutedEventArgs e)
        {
            // Check input
            this.ShowMessage(Visibility.Hidden, "");
            if (string.IsNullOrEmpty(this.TxtRegisterName.Text.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "User name required.");
                this.TxtRegisterName.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.TxtRegisterPwd.Password.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Password required.");
                this.TxtRegisterPwd.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.TxtRegisterPwdRepeat.Password.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Password required.");
                this.TxtRegisterPwdRepeat.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.TxtRealName.Text.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Real name required.");
                this.TxtRealName.Focus();
                return;
            }
            if (RadioBtnMale.IsChecked == false && RadioBtnFemale.IsChecked == false)
            {
                this.ShowMessage(Visibility.Visible, "Sex required.");
                this.RadioBtnMale.Focus();
                return;
            }
            if (string.IsNullOrEmpty(((DateTime)(this.DatePickerBirthday.SelectedDate)).ToString("d")))
            {
                this.ShowMessage(Visibility.Visible, "Birthday required.");
                this.DatePickerBirthday.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.ComboBoxEducation.SelectedValue.ToString().Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Education required.");
                this.ComboBoxEducation.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.TxtPhone.Text.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Phone required.");
                this.TxtPhone.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.TxtEmail.Text.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Email required.");
                this.TxtEmail.Focus();
                return;
            }
            if (string.IsNullOrEmpty(this.TxtStudentID.Text.Trim()))
            {
                this.ShowMessage(Visibility.Visible, "Student ID required.");
                this.TxtStudentID.Focus();
                return;
            }

            // Read user info
            UserInfo user_info = new UserInfo();
            user_info.LoginName = this.TxtRegisterName.Text.Trim();
            user_info.Password = this.TxtRegisterPwd.Password.Trim();
            user_info.UserName = this.TxtRealName.Text.Trim();
            user_info.Sex = this.RadioBtnMale.IsChecked == true ? SexType.Male : SexType.Femal;
            user_info.Birthday = (DateTime)(this.DatePickerBirthday.SelectedDate);
            user_info.Education = (EducationType)(this.ComboBoxEducation.SelectedIndex);
            user_info.Phone = this.TxtPhone.Text.Trim();
            user_info.Email = this.TxtEmail.Text.Trim();
            user_info.StudentID = this.TxtStudentID.Text.Trim();
            user_info.Authority = AuthorityType.Experimenter;

            // Register
            try
            {
                // Check user info
                if (DatabaseHelper.IsUserRegistered(user_info.LoginName))
                {
                    ShowMessage(Visibility.Visible, "User name already exists");
                    TxtRegisterName.Focus();
                    return;
                }
                if (this.TxtRegisterPwdRepeat.Password.Trim() != this.TxtRegisterPwd.Password.Trim())
                {
                    ShowMessage(Visibility.Visible, "Two input passwords do not match.");
                    TxtRegisterPwdRepeat.Focus();
                    return;
                }
                // Register
                if (DatabaseHelper.RegisterUserInfo(user_info))
                {
                    MessageWin message_win = new MessageWin();
                    message_win.ShowDialog("注册成功!请登录。", "提示", MessageBoxButton.OK);
                    // 转到登陆界面
                    ShowLoginUI();
                }
                else
                {
                    this.ShowMessage(Visibility.Visible, "Unknown user name or incorrect password.");
                }
            }
            catch (Exception ex)
            {
                DatabaseMessage.ShowDatabaseFailure(ex.Message);
            }
        }