[php]żle działa limit w zapytaniu ORDER BY

Witam mam problem ponieważ zauważyłem,że po usunięciu rekordu z bazy wyświetla jedno zdjęcie kilka razy przechodząc na następną podstronę.W zapytaniu miałem WHERE i limit 3,po przejściu 3 zdjęć następna podstrona.Takie miałem zapytanie

$query = "SELECT id_foteczki, nazwa_foteczki, opis_foteczki, link_foteczki,czas_foteczki,osoby_foteczki FROM galeria3 WHERE id_foteczki>=$limit LIMIT 3";

,a tak zapisany limit

$limit = (isset($_GET['go']))?$_GET['go']:1; $back=''; if($limit>=3)

.Zamiast WHERE zastosowałem ORDER BY aby sortować po id.Tak zapisałem zapytanie

$query = "SELECT id_foteczki, nazwa_foteczki, opis_foteczki, link_foteczki,czas_foteczki,osoby_foteczki FROM galeria3 ORDER BY id_foteczki>=$limit DESC LIMIT 3";

ale jest wyświetla 3 zdjęcia,a po przejściu na następną podstronę 3 następne ale zaczyna wyświetlać 3 od początku które już były.Jak poprawić to???

blabalbala WHERE warunek ORDER BY kolumna DESC LIMIT x

Zapisałem tak zapytanie i powtarza 1 zdjęcie na następnej podstronie,gdzie popełniłem błąd:

$query = "SELECT id_foteczki, nazwa_foteczki, opis_foteczki, link_foteczki,czas_foteczki,osoby_foteczki FROM galeria3 WHERE id_foteczki>=$limit ORDER BY id_usera DESC LIMIT 3";

Jeżeli to ma być paginacja, to dajesz LIMIT X, Y…gdzie X to nr rekordu początkowego a Y to krok

przykładowo LIMIT 0, 5 zwróci pierwsze pięć rekordów, zaś LIMIT 10, 8 zwróci osiem, począwszy od dziesiątego.

Jeżeli więc ma dzielić po 3 rekordy, to w miejsce Y dajesz 3, a w miejsce X zmienną, w której sobie wyliczasz zależnie od numeru strony krotność trójki.

Limit już działa,tylko mam pytanie jak zapisać ten limit tak aby po przejściu next nie pojawiała się dalej pusta podstona,tylko zatrzymał się limit na ostatnim zdjęciu i wyświetliło tylko back???

Na samym początku pobierz sobie ilość wszystkich rekordów, na tej podstawie łatwo policzysz ile będziesz miał wszystkich stron.

Mając to info łatwo sobie będziesz mógł ograniczyć stronicowanie.

W sieci jest też od groma gotowych skryptów stronicowania, więc możesz sobie jakiś wybrać i zastosować albo podglądnąć jak to w nim jest zrobione.

Tak tylko jak ktoś doda nowy rekord,to skąd będziesz wiedział ile będzie rekordów!!!chodzi mi o to aby skrypt nie przeskakiwał dalej???tylko kończył na ostatnim dodanym rekordzie.

Wybacz, ale nie rozumiem twojego problemu.

Przyjmując nawet sytuację, że w czasie od wygenerowania stronicowania zostanie dodanych X rekordów, to i tak nie zostaną one uwzględnione …bo zostaną odcięte nałożonymi ograniczeniami liczby rekordów i liczby stron pobranych/wyliczonych na początku.

Tym bardziej, ze paginacja jest (re)generowana zazwyczaj przy każdym odświeżeniu strony.

Teraz przykład: zanim wygenerujesz linki stronicowania pobierasz liczbę rekordów, zwraca dajmy 100, dzielisz 10/str …masz zatem 100:10 = 10 stron …i już nie problem sobie ograniczyć <=100 czy <=10 -prawda? …a jeżeli coś zostanie dodane w międzyczasie, to jako niespełniające ww. warunków nie zostanie uwzględnione …no chyba ze po odświeżeniu.

Powtarzam, jeżeli masz problem ze zrozumieniem lub zakodowaniem tego, to zerknij na jakiś gotowiec. Jest tego od groma w sieci, wystarczy wstukać w google np php mysql pagination