Prvo, možeš da izvučeš koliko tačno imaš rezultata.
SELECT COUNT(*) FROM tabela WHERE uslov
Odrediš parametar koliko rezultata ide po stranici
$rps = 20;
Pa odatle može da se izračuna koliko je ukupno stranica potrebno da se prikažu svi rezultati na ovaj način. Ove stranice se razlikuju po tome što u adresi nose informaciju o rednom broju stranice: ...?...&rbs=2
Sada je tu sve što je potrebno za jednu stranicu. Koristi se sql sa LIMIT klauzulom tako da se dobiju samo oni rezultati koji su potrebni za tu stranicu:
"SELECT ... LIMIT " . ($rbs * $rps) . ", $rps"