• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak zrobić system pytań i odpowiedzi (quiz)?

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
+3 głosów
2,792 wizyt
pytanie zadane 31 grudnia 2015 w JavaScript przez Nolandosky Bywalec (2,110 p.)
Potrzebuję rady, o wykonanie quizu. Ma to wyglądać następująco:

Osoba wybiera kategorię i na tej podstawie wybiera mu pytanie z bazy danych (losowe 1 pytanie), wyświetla mu je daje 4 odpowiedzi (1 poprawna), po czym użytkownik wybiera odpowiedź i system sprawdza poprawność. Jeśli jest dobrze dodaje mu 1 pkt, jeśli nie no to nic. Tylko teraz zastanawiam się jak to wykonać. Chodzi o to żeby pytanie było losowe, a korzystanie z MySQL RAND() podobno nie jest zalecane, bo może obciążać serwer. Nie mogę wziąć losowego ID bo trzeba wziąć jeszcze pod uwagę kategorię.

Drugi problem to jak zrobić, żeby po minięciu np. 20 sekund, pytanie automatycznie się zmieniało. Tak by użytkownik miał ograniczony czas.

W kwestii JS jestem początkujący, może nawet raczkujący. Nie chcę gotowca, szukam jedynie rady jak to wykonać i czego użyć.
komentarz 29 listopada 2017 przez TapQu Użytkownik (540 p.)
Nie jesteś początkującym.

Ja robie w pythonie kalkulatory np gęstości na fizykę xD albo jakieś 'troll' wiadomości typu:

title = 'Virus'

    message = 'Your Samsung Galaxy J3 have virus'
    droid.dialogCreateAlert(title, message)
    droid.dialogSetPositiveButtonText('Delete system')
    droid.dialogSetNegativeButtonText('Delete android')
    droid.dialogShow()
    import sys
    sys.exit(1)

1 odpowiedź

+1 głos
odpowiedź 3 stycznia 2016 przez Magicone Nałogowiec (45,100 p.)
wybrane 3 stycznia 2016 przez Nolandosky
 
Najlepsza

 PK -> primary key, FK -> foreign key

  • Tabele w bazie danych: kategorie <- pytania <- odpowiedzi (strzałki = relacje)
  • W tabeli kategorie, oprócz PK tworzysz kolumnę z nazwą kategorii
  • W tabeli pytania, oprócz PK i FK do tabeli kategorie, tworzysz kolumnę zawierającą treść pytania
  • W tabeli odpowiedzi, oprócz PK i FK do tabeli pytania, tworzysz kolumnę zawierającą treść odpowiedzi, oraz kolumnę "correct", która przyjmie wartości 0 lub 1 i będzie wyznacznikiem, czy odpowiedź jest prawdziwa. Dzięki takiemu zastosowaniu możesz (ale nie musisz) tworzyć pytania z kilkoma poprawnymi odpowiedziami. 

Skoro już chcesz uniknąć random od SQLa to możesz na początku pobrać wszystkie id występujących pytań, po czym losujesz jedno po stronie php, czy czego tam sobie używasz i tym razem wybierasz pytanie z bazy, ale o określonym id. Co do wspomnianych przez Ciebie 20 sekund - setTimeout.

Podobne pytania

0 głosów
1 odpowiedź 1,415 wizyt
0 głosów
1 odpowiedź 766 wizyt
pytanie zadane 26 kwietnia 2015 w C i C++ przez TheFunny Gaduła (3,420 p.)
0 głosów
1 odpowiedź 1,985 wizyt
pytanie zadane 11 stycznia 2016 w JavaScript przez Specyficzny Nowicjusz (190 p.)

93,443 zapytań

142,434 odpowiedzi

322,691 komentarzy

62,805 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

...