• 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)?

VPS Starter Arubacloud
+3 głosów
2,506 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,365 wizyt
0 głosów
1 odpowiedź 616 wizyt
pytanie zadane 26 kwietnia 2015 w C i C++ przez TheFunny Gaduła (3,420 p.)
0 głosów
1 odpowiedź 1,946 wizyt
pytanie zadane 11 stycznia 2016 w JavaScript przez Specyficzny Nowicjusz (190 p.)

93,032 zapytań

141,996 odpowiedzi

321,300 komentarzy

62,379 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

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...