![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 26 Pomógł: 0 Dołączył: 6.07.2015 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Chce zrobic test taki ze jest z 15 pytan i kazde pytanie to inna strona. np. klikasz rozpocznij test i przenosi na strone strona.pl/test?=1 gdzie jest pierwsze pytanie. Gdy odpowiemy i nacisnimy submit "Dalej" przenosi na strona.pl/test.php?=2 gdzie jest 2 pytanie i tak dalej do 15 az przeniesie do strony strona.pl/test.php?=wynik gdzie wyswietla ile pytan bylo prawidlowych. Jakies pomysly? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 53 Pomógł: 5 Dołączył: 4.12.2013 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Trzymając się Twoich założeń:
1. Pytania, odpowiedzi najlepiej trzymać w bazie danych (daje Ci to większe możliwości). Przykład (nazwy są dowolne): tabela trzymająca podst. info o teście test_info: id, name .... tabela trzymająca dane, kto rozwiązał i podst. info user_info id, quantity_points, user_id, date_start, date_end, test_info_id .... Tabela z pytaniami question: id, content, test_info_id, question_number Tabela z odpowiedziami answer: id, content, question_id right_answer Tabela z danymi dla spec. testu user_answer: id, question_id, answer_id, user_info_id 2. Sprawdzasz czy użyt. może rozwiązać, wejść na stronę itd. 3. Formularz: w linku w parametrze podajesz id testu(test_info_id) + numer pytania(question_number) sprawdzasz czy dane z GET są poprawne, jeżeli są to pobierasz dane z bazy i wstrzykujesz do formularza pytanie 1: tresc <input value="answer_id" name="answer['question_id'][]"> button zawiera link do nast. pytania 4. Po naciśnieciu buttona sprawdzasz czy na pewno dane przychodzą poprawne, ew. przetwarzasz i zapisujesz do sesji 5. proces 2-4 powtarzasz aż do ost. pytania 6. Po ostatecznym potwierdzeniu: pobierasz wszystkie dane (form + sesja), walidujesz, jeżeli wszystko jest ok. dodajesz swoje parametry i zapisujesz w bazie, usuwasz sesje, ustawiasz jakiś param w db by wiedzieć, że użytkownik już wypełnił i nie będzie mógł więcej. 7. Przekierowujesz i pokazujesz użyt. jego wynik Pamiętaj by ZAWSZE sprawdzać dane wejściowe. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 28.08.2025 - 08:01 |