![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 19 Dołączył: 25.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam następujący problem. Chciałbym zrobić quiz, w którym każde pytanie miałoby przynajmniej jedną (ale nie maksymalnie) dobrą odpowiedź).
Na przykład w quizie ze znajomości angielskiego dane mogłyby wyglądać tak: -------------------------------------------------------------------------- Pytanie: rzucać, Odpowiedź: to throw lub to cast Pytanie: śpiewać, Odpowiedź: to sing Pytanie: malować, Odpowiedź: to paint Pytanie: kupić: Odpowiedź: to buy lub to purchase lub to get -------------------------------------------------------------------------- Przykład może nieco naciągany, ale chodziło mi tylko o pokazanie idei. Doszedłem do wniosku, że najlepiej (najefektywniej) będzie przechowywać te dane w bazie w następującej postaci: ID-----Pytanie-----------Odpowiedź 1------rzucać-------------to throw 2------rzucać-------------to cast 3------śpiewać-----------to sing 4... itd. Czyli każda kombinacja pytanie/odpowiedź w osobnym rekordzie tej samej tabeli. Według mnie to najlepszy pomysł, ale jako że stawiam pierwsze kroki to bardzo możliwe, że się mylę. Chciałbym to teraz wyciągnąć z tej tabeli do zmiennej PHP w jakiejś łatwej do obsługi postaci. Najlepiej tak, żeby pytania się nie powtarzały a odpowiedzi nie poginęły. Bo mogę sobie na przykład zrobić: Kod SELECT * FROM tabela Wtedy pytania będą się powtarzać. Mogę taką tablicę obrobić potem w PHP, ale wydaje mi się to mało efektywne (najlepiej chyba aby jak najwięcej pracowała przy tym baza). Jak z kolei dam: Kod SELECT * FROM tabela GROUP by Pytanie to poginą mi odpowiedzi. A może w dwóch tabelach to jakoś rozmieścić, porobić jakieś złączenia? Znam już podstawy SQL i PHP, brakuje mi po prostu wyobraźni, jak to najefektywniej "rozegrać". Z góry dzięki za pomoc. -------------------- Znalazłeś sam rozwiązanie swojego problemu? Nie pisz "już wiem, do zamknięcia". Podziel się rozwiązaniem - inni będą mieli łatwiej.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 04:32 |