protected void Page_Load(object sender, EventArgs e) { count = (int)Session["NumerPytania"]; numerPytania = count + 1; test20 = (Test20)Session["Test20"]; ResultButton.Visible = false; if (count == 0) { PrevButton.Visible = false; } else if (count == test20.Questions.Length - 1) { NextButton.Visible = false; ResultButton.Visible = true; } if (Session["nazwa_kategorii"] != null) { LabelNameCategory.Text = Session["nazwa_kategorii"].ToString(); } NumberLabel.Text = numerPytania.ToString(); // ustawienie numeru pytania na etykiecie ContentLabel.Text = test20.Questions[count].Content; RadioBTN.Items.Add(new ListItem(test20.Questions[count].Ans1)); RadioBTN.Items.Add(new ListItem(test20.Questions[count].Ans2)); RadioBTN.Items.Add(new ListItem(test20.Questions[count].Ans3)); RadioBTN.Items.Add(new ListItem(test20.Questions[count].Ans4)); if (test20.Questions[count].SelectedAnswer > -1) { RadioBTN.SelectedIndex = test20.Questions[count].SelectedAnswer; } }
protected void Page_Load(object sender, EventArgs e) { id_kategorii = Session["ID_kategorii"].ToString(); if (Session["Test20"] != null) { test20 = (Test20)Session["Test20"]; int valueCorrectAns = test20.GetCorrectAnswers(); ResultLabel.Text = "Twój wynik to: " + test20.GetCorrectAnswers() + "/20"; if (test20.GetCorrectAnswers() >= 10) { HeadLabel.Text = "Gratulacje! Poszło całkiem nieźle!"; StatusLabel.Text = "TEST ZALICZONY!"; StatusLabel.Style.Add("color", "#39AB00"); } else { HeadLabel.Text = "Niestety, ale musisz jeszcze popracować."; StatusLabel.Text = "TEST NIEZALICZONY!"; StatusLabel.Style.Add("color", "#ff2525"); } // połączenie z bazą danych SqlConnection con = new SqlConnection("Data Source = 54.38.54.112; Initial Catalog = TestyOnline; Persist Security Info = True; User ID = TestyOnline; Password=k3HNMRm8rJJR5zfN"); con.Open(); string login = Request.Cookies["userLogin"].Value; string id_kategorii = Session["ID_kategorii"].ToString(); /* */ string query = "IF NOT EXISTS ( SELECT 1 FROM TESTY WHERE " + "id_uzytkownika=(SELECT id_uzytkownika FROM UZYTKOWNICY WHERE login='******') AND id_kategorii=" + id_kategorii + ") INSERT INTO TESTY VALUES(" + id_kategorii + ", (SELECT id_uzytkownika FROM UZYTKOWNICY WHERE login ='******'), " + valueCorrectAns + ", GETDATE(), (SELECT nazwa FROM KATEGORIE WHERE id_kategorii =" + id_kategorii + "))" + "ELSE UPDATE TESTY SET zdobyte_punkty=" + valueCorrectAns + ", data_wypelnienia=GETDATE() WHERE id_kategorii=" + id_kategorii + " AND id_uzytkownika=(SELECT id_uzytkownika FROM UZYTKOWNICY WHERE login='******')"; SqlCommand cmd = new SqlCommand(query, con); cmd.ExecuteNonQuery(); con.Close(); } }
protected void Restart_Click(object sender, EventArgs e) { int ROZMIAR_TESTU = 20; // liczba pytań w teście test20 = new Test20(); test20.Category = "Nazwa wybranej kategorii"; // ustawienie kategorii do NowyTest test20.Id_category = Convert.ToInt32(id_kategorii); test20.CreateQuestionsArray(ROZMIAR_TESTU); // utworzenie pustej tablicy o rozmiarze 'n' dla pytań // połączenie z bazą danych SqlConnection con = new SqlConnection("Data Source = 54.38.54.112; Initial Catalog = TestyOnline; Persist Security Info = True; User ID = TestyOnline; Password=k3HNMRm8rJJR5zfN"); con.Open(); string query = "SELECT * FROM PYTANIA WHERE id_kategorii=" + id_kategorii + " ORDER BY NEWID()"; // losowe pobranie pytań z bazy SqlCommand cmd = new SqlCommand(query, con); SqlDataReader reader = cmd.ExecuteReader(); Question[] questArray = new Question[ROZMIAR_TESTU]; // utworzenie tablicy pytań int i = 0; while (reader.Read()) { questArray[i] = new Question(Convert.ToInt32(reader.GetValue(0)), reader.GetString(2), reader.GetString(3), reader.GetString(4), reader.GetString(5), reader.GetString(6), Convert.ToInt32(reader.GetValue(7))); i++; if (i == ROZMIAR_TESTU) { break; } } con.Close(); test20.Questions = questArray; // przypisanie tablicy pytań do zmiennej typu Test20 Session["NumerPytania"] = 0; // inkrementacja liczby rozpoczętych testów przez użytkownika (statystyki) Session["Test20"] = test20; // przekazanie obiektu NowyTest do sesji Response.Redirect("ActiveTest.aspx"); }
protected void Page_Load(object sender, EventArgs e) { count = (int)Session["NumerPytania"]; numerPytania = count + 1; test20 = (Test20)Session["Test20"]; if (count == 0) { PrevButton.Visible = false; } else if (count == test20.Questions.Length - 1) { NextButton.Visible = false; } if (Session["nazwa_kategorii"] != null) { LabelNameCategory.Text = Session["nazwa_kategorii"].ToString(); } NumberLabel.Text = numerPytania.ToString(); // ustawienie numeru pytania na etykiecie ContentLabel.Text = test20.Questions[count].Content; switch (test20.Questions[count].SelectedAnswer + 1) { case 1: UserSelectedAnswer.Text = test20.Questions[count].Ans1; break; case 2: UserSelectedAnswer.Text = test20.Questions[count].Ans2; break; case 3: UserSelectedAnswer.Text = test20.Questions[count].Ans3; break; case 4: UserSelectedAnswer.Text = test20.Questions[count].Ans4; break; default: UserSelectedAnswer.Text = "nie zaznaczono odpowiedzi"; break; } switch (test20.Questions[count].CorAns) { case 1: CorrectAnswer.Text = test20.Questions[count].Ans1; break; case 2: CorrectAnswer.Text = test20.Questions[count].Ans2; break; case 3: CorrectAnswer.Text = test20.Questions[count].Ans3; break; case 4: CorrectAnswer.Text = test20.Questions[count].Ans4; break; } if (test20.Questions[count].CompareAnswerWithSelected()) { UserSelectedAnswer.Style.Add("color", "#39AB00"); } else { UserSelectedAnswer.Style.Add("color", "#ff2525"); } }