Autor Zpráva
Zool
Profil *
Dobrý den, potřeboval bych z tabulky (o 1000 záznamech) vybrat náhodně např 20 záznamů a přitom na to dát stránkování. Tedy když kliknu na stranu 2 ať se mi vybere dalších 20 záznamů, ale jiné než na té první straně. Uvažoval jsem, že bych vybral náhodně všechny data uložil do cache, a pak bych to postupně nějak vypisoval. Nebo víte jak na to jinak??
Děkuji
Trsak
Profil
Zool:
Co takhle si vytvořit sloupec random_num, kde vygeneruješ náhodně čísla (pokud nepřejdeš na další stránku), a seřadit to podle toho sloupce?

UPDATE tabulka SET random_num = RAND();



Omlouvám se, nějak mi to nemyslelo. To co jsem napsal je nesmysl, přece jen na ty stránky půjde více uživatelů a výsledky by se tak stejně zamíchali.

Pročetl jsem si ale dokumentaci a u RAND() je možné zapsat seed.

Takže při prvním spuštění vygeneruješ seed, který dále používáš:
<?php
$seed = mt_rand(100, 999);
A pak v SQL dotazu:
ORDER BY RAND('.$seed.')
Zool
Profil *
Super děkuji, taky jsem se mohl kouknout do manualu..

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: