![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 493 Pomógł: 8 Dołączył: 7.07.2007 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Cześć.
Chce zrobić rotator banerów na mojej stronie, ale mam jedną zagwozdkę. RAND() rozwiązałoby problem, ale jeśli mam np. 3 rekordy w bazie to może rand losować mi cały czas jeden rekord lub "częściej" a ja chciałbym aby mi losował wszystkie banery w miarę po równo. Kombinuję aby losował mi ORDER BY RAND(), wylosowany rekord otrzyma np. rekord do bazy `rander`=1, zapytanie losuje rekordy where `rander`=0 wiec każdy baner w bazie zostanie wyświetlony raz, ale jak zapełnię we wszystkich rekordach `rander` na 1... to jak potem odwrócić aby z kolei szukał po `rander` = 1 i po wyciągnięciu rekordu zmieniał `rander`= 0 i tak w kółko ? Da się tak to zaprogramować? Nie wiem czy dobrze wytłumaczyłem o co mi chodzi:) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 807 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Kiedy skończą się pola "0", to wiesz, że masz ustawić ponownie wszystkie na "0".
Jeśli nie zależy Ci na takiej samej losowości u każdego użytkownika, to: 1. Wybierz wszystkie bannery, przetasuj je i zapisz w sesji. 2. Podczas wyświetlania wybierz pierwszy z tablicy i usuń. 3. Kiedy tablica będzie pusta, to wracasz do 1. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 15:44 |