Witam,
wyobraźmy sobie taką sytuację. Wyszukuję dane z bazy - załóżmy że w wyniku wyszukiwania otrzymałem 50 rekordów. Chcę teraz wyświetlać te rekordy na 5 stronach - po 10 na stronę.
No i tutaj zaczynają się schody - jak to zrobić? Mam dwa wyjścia: albo użyć LIMIT w zapytaniu, albo nie używać tego i potem tylko wyświetlać odpowiedni zakres z wyszukanych danych.
Jednak nie wiem jak z tego wybrnąć.
Jeżeli używam LIMIT, to problemem jest ilość zwróconych wyników - nie mogę przewidzieć ile wyników zwróci zapytanie. Próbowałem kombinować coś z COUNT ale zwraca tablicę danych i nie mogę wyciągnąć jednoznacznie ilości danych. Poza tym w takim wypadku trzeba by bylo wykonywac zapytanie do bazy po kliknięciu w każdy numer strony, co mogłoby długo trwać...
Jeżeli nie chcę używać LIMIT to wychodzi jeszcze gorzej. Załóżmy, że wykonałem zapytanie do bazy. Jednak klikając w odnośniki do kolejnych stron znów wysyłam zapytanie do bazy - ponieważ wykonanie zapytania trwa u mnie dość długo, jest to bez sensu. Oczywiście to nie problem zrobić, żeby po kliknięciu w link zapytanie nie szło drugi raz, ale gdzie wtedy zapamiętać wyniki zwrócone poprzednio z bazy?