Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]quiz
masterbx2
post
Post #1





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 1.04.2011

Ostrzeżenie: (0%)
-----


próbuje zrobic cos w rodzaju quizu na stronke.

mam tabele pytania a w niej

id
pytanie
odpowiedz

chce teraz wyswietlic losowe pytanie i 4 losowe odpowiedzi w czym jedna jest prawidlowa

jak sie do tego najlepiej zabrac?

probowalem miedzy innymi tak:

  1. $query = mysql_query("SELECT pytanie, odpowiedz FROM pytania ORDER BY rand() LIMIT 4");
  2. while($row = mysql_fetch_assoc($query))
  3. {
  4. echo $row['pytanie'];
  5. echo $row['odpowiedz'];
  6.  
  7. }


ale nie wiem jak wtedy ustawic z osobna limity na pytania i odpoweidzi bo w tem sposob mam z kazdego po 4 :/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kill15
post
Post #2





Grupa: Zarejestrowani
Postów: 184
Pomógł: 14
Dołączył: 21.12.2010

Ostrzeżenie: (0%)
-----


Ah rozumiem Cie (IMG:style_emoticons/default/snitch.gif)
No ale i tak możesz zrobić to tak jak mówiłem lub troszke inaczej tzn:

tabela pytania:
id
pytanie
odpowiedz

tabela błędne:
id
odp

i ew jezeli chcesz mieć ciągle te same możliwości odpowiedzi do pytania to zrób jak mówiłem w blednych: id_pytania
Go to the top of the page
+Quote Post
Ghostbusters
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 31.12.2014

Ostrzeżenie: (0%)
-----


Cytat(kill15 @ 10.05.2011, 11:01:58 ) *
tabela pytania:
id
pytanie
odpowiedz

tabela błędne:
id
odp

i ew jezeli chcesz mieć ciągle te same możliwości odpowiedzi do pytania to zrób jak mówiłem w blednych: id_pytania


Jeżeli tak zrobisz, obciążysz baze niepotrzebnymi danymi.
Zauwaz, że dla kazdej tabeli PYTANIA bedziesz musiał stworzyc tabele ODPOWIEDZI.

Zamiast zrobić jedną tabele QUIZ, w której umieścisz kolumny: ID, pytanie, odpowiedź

A skrypt będzie pobieral odpowiedni rekord jako pytanie np.:

ID=1, pytanie,

odpowiedziami będą losowo wybrane rekordy z tym, że jeden z rekordów będzie tym samym rekordem co w pytaniu:

ID=1, odpowiedź
ID=2, odpowiedź
ID3, odpowiedź
ID=4, odpowiedź


Czyli zamiast ładować dodatkowe tabele, do odpowiedzi będą dobrane dodatkowe 3 rekordy, które będą wybrane losowo np. sąsiednie rekordy.


Wolałbym rowinąć wątek, który zaczął masterbx2.

Dobrze myśli tylko nie wie jak to zrobić w PHP + MySQL.

Na coś takiego chciałbym znać odpowieź mądrą.

To samo tyczy sie Twojego wczesniejszego pomysłu:

id
pytanie
prawdziwa
falszywa
falszywa2
falszywa3

Wyobraź sobie teraz, gdybyś miał w bazie 1000 rekordów (ID, pytanie, odpowiedź) i do każdego rekodu musiał dodać dodatkowe 3 kolumny, dodatkowe 3 wartości.

A tak, to masz tylko pytanie i odpowiedź.
Pytanie porównujesz z 4 odpowiedziami, przy czym 3 z nich są losowe.



Ten post edytował Ghostbusters 31.12.2014, 15:22:03
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.09.2025 - 07:53