Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] order by rand() a stronicowanie
thomson89
post
Post #1





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

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


Witam!

Posiadam taki prosty skrypt ze stronicowaniem za pomocą LIMIT. Chciałem zrobić sortowanie losowe wszystkich rekordów z bazy i takie ich wyświetlenie. W tym zadaniu świetnie sprawia się ORDER by RAND(). Niestety, czasami niektóre rekordy się powtarzają i chciałbym to wyeliminować. Pytanie tylko jak to zrobić?

Pozdrawiam, Mateusz!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thomson89
post
Post #2





Grupa: Zarejestrowani
Postów: 1 178
Pomógł: 51
Dołączył: 7.01.2009
Skąd: Gdańsk

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


No to interesuj mnie pierwsza możliwość bo drugiej jakoś sobie nie wyobrażam.

Czyli muszę sobie do sesji zapisać tablicę, powiedzmy wielowymiarową. Na stronie każdej stronie najpierw sprawdzić czy istnieje $tabliczka[$page], po wykonaniu zapytania z pobraniem rekordów, zapisać id rekordów do tablicy $tabliczka[$page] .= $id;.

Na następnej stronie, muszę zbudować zapytanie:
  1. SELECT * FROM `wyroby` ORDER BY RAND() LIMIT 10, 10 NOT IN(1, 12, 123, 145);


Dobrze rozumuję?
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: 6.10.2025 - 17:01