![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 197 Pomógł: 24 Dołączył: 22.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam (IMG:style_emoticons/default/smile.gif) jak zawsze z dziwnym problemem. Przerabiam pewien skrypt do quizu, który w domyśle pobiera zawsze wszystkie pytania. Mam go przerobić, by zawsze losował trzy pytania z puli. Akurat to było proste, poprzez ORDER BY RAND().
OK, wiem, że nie jest to szczególnie polecane rozwiązanie poprzez małą wydajność, ale akurat na tym mi nie zależy, bo baza jest śmiesznie mała. Problem polega na tym, że przy wyświetlaniu odpowiedzi, skrypt korzysta z tego samego fragmentu i... losuje inne odpowiedzi (IMG:style_emoticons/default/biggrin.gif) Zatem sprawa sprowadza się do: a) wylosowanie pytań i potem posortowanie ich wg innej kolumny (chociażby id pytania). Nie wiem tylko, jak tego dokonać po strone mysql. 'ORDER BY RAND(), id' nie działa. Zostaje posortowanie wyników po stronie PHP i póki co takie rozwiązanie wdrażam. (IMG:style_emoticons/default/cool.gif) posortowanie odpowiedzi wg kolejności ze strony pytań. Tylko nie mam pojęcia, jak mogę posortować je wg podanej kolejności. Kiedy korzystam z WHERE id IN (3,5,1) i tak dostaję posortowane pytania (1,3,5). Proszę o podpowiedź |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 06:32 |