void CoordDlg::btOK_Click(Win::Event& e) { //_____________________________________________________________ Validate tr1::wregex regextbxUsername(L"[A-Za-z0-9][A-Za-z0-9][A-Za-z0-9][A-Za-z0-9]+"); if (tr1::regex_match(tbxUsername.Text, regextbxUsername) == false) { tbxUsername.ShowBalloonTip(L"Invalid Username", L"Please provide four or more alphanumeric characters (A-Z, a-z or 0-9)", TTI_ERROR); return; } tr1::wregex regextbxPass(L"[A-Za-z0-9][A-Za-z0-9][A-Za-z0-9]+"); if (tr1::regex_match(tbxPass.Text, regextbxPass) == false) { tbxPass.ShowBalloonTip(L"Invalid Pass", L"Please provide three or more alphanumeric characters (A-Z, a-z or 0-9)", TTI_ERROR); return; } Sql::StringBuilder sb(L"coordinator", L"coordinator_id", coordinator_id); sb.Bind(L"professor_id", ddProfessor); sb.Bind(L"program_id", ddProgram); sb.Bind(L"username", tbxUsername); sb.Bind(L"pass", tbxPass); sb.Bind(L"isAdmin", ckIsadmin); Sql::SqlConnection conn; int rows = 0; try { conn.OpenSession(DSN, USERNAME, PASSWORD); //Control Panel>Administrative Tools>Data Sources (ODBC)>Create dsn_myDatabase //conn.OpenSession(hWnd, CONNECTION_STRING); rows = conn.ExecuteNonQuery(sb.GetString()); if (rows!=1) { this->MessageBox(Sys::Convert::ToString(rows), L"Error: number of affected rows", MB_OK | MB_ICONERROR); return; } } catch (Sql::SqlException e) { this->MessageBox(e.GetDescription(), L"Error", MB_OK | MB_ICONERROR); return; } this->EndDialog(TRUE); }
void UserDlg::btOK_Click(Win::Event& e) { //_____________________________________________________________ Validate tr1::wregex regextbxUsername(L"[A-Za-z0-9]+"); if (tr1::regex_match(tbxUsername.Text, regextbxUsername) == false) { tbxUsername.ShowBalloonTip(L"Invalid Username", L"Please provide one or more characters", TTI_ERROR); return; } tr1::wregex regextbxFirst_name(L"[A-Za-z0-9]+"); if (tr1::regex_match(tbxFirst_name.Text, regextbxFirst_name) == false) { tbxFirst_name.ShowBalloonTip(L"Invalid First name", L"Please provide one or more characters", TTI_ERROR); return; } tr1::wregex regextbxLast_name(L"[A-Za-z0-9]+"); if (tr1::regex_match(tbxLast_name.Text, regextbxLast_name) == false) { tbxLast_name.ShowBalloonTip(L"Invalid Last name", L"Please provide one or more characters", TTI_ERROR); return; } tr1::wregex regextbxPasswordz(L"[A-Za-z0-9]+"); if (tr1::regex_match(tbxPasswordz.Text, regextbxPasswordz) == false) { tbxPasswordz.ShowBalloonTip(L"Invalid Passwordz", L"Please provide one or more characters", TTI_ERROR); return; } tr1::wregex regextbxEmail(L".+@.+"); if (tr1::regex_match(tbxEmail.Text, regextbxEmail) == false) { tbxEmail.ShowBalloonTip(L"Invalid Email", L"Please provide one or more characters", TTI_ERROR); return; } Sql::StringBuilder sb(L"userz", L"userz_id", userz_id); sb.Bind(L"username", tbxUsername); sb.Bind(L"first_name", tbxFirst_name); sb.Bind(L"last_name", tbxLast_name); sb.Bind(L"passwordz", tbxPasswordz); sb.Bind(L"email", tbxEmail); sb.Bind(L"is_active", ckIs_active); sb.Bind(L"has_access_patient_info", ckHas_access_patient_info); sb.Bind(L"has_access_users", ckHas_access_users); sb.Bind(L"has_access_payments", ckHas_access_payments); sb.Bind(L"has_access_patient_chart", ckHas_access_patient_chart); sb.Bind(L"has_access_dental_procedure_setup", ckHas_access_dental_procedure_setup); Sql::SqlConnection conn; int rows = 0; try { //conn.OpenSession(DSN, USERNAME, PASSWORD); //Control Panel>Administrative Tools>Data Sources (ODBC)>Create dsn_myDatabase conn.OpenSession(hWnd, CONNECTION_STRING); rows = conn.ExecuteNonQuery(sb.GetString()); if (rows!=1) { this->MessageBox(Sys::Convert::ToString(rows), L"Error: number of affected rows", MB_OK | MB_ICONERROR); return; } } catch (Sql::SqlException e) { this->MessageBox(e.GetDescription(), L"Error", MB_OK | MB_ICONERROR); return; } this->EndDialog(TRUE); }