Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql]Zmiana kolejności rekordów
Forum PHP.pl > Forum > Przedszkole
jajcarzd1
Witam

Mam taki problem. Otóż mam tabelę newsów postaci:

id data_dodania tytuł opis
1 2007-01-01 nazwa1 tekst1
2 2007-02-02 nazwa2 tekst2
....
..


Generowana jest strona postaci


id data_dodania tytuł pole_edycja pole_usuń
1 2007-01-01 nazwa1 edycja usuń
2 2007-02-02 nazwa2 edycja usuń
....
....

I teraz potrzebuję mieć możliwość zmiany pozycji danego wpisu np. pole nr 3 przesunąć o góry lub na dół. Dodałem sobie do tabeli pole pozycja w którym będe wpisywał ewentualnie nr pozycji przy wyświetlaniu. W momencie przesunięcia np do góry w rekordzie wyższym zmienię nr pozycji na niższą a w tym przesuwanym na wyższą.

Z tym że mam problem z tym jaką wartość pozycji wpisywać przy dodawaniu rekordu. NIe dam np domyślnie wartości np 1 bo będzie mi to tworzyć duplikaty. Myślałem żeby może przed INSERTEM zrobić SELECTA i wyliczyć wartość maksymalną jaka jest w kolumnie pozycja i przydodawaniu dodać taką wartość +1.
Poza tym w momencie usunięcia rekordu pojawią mi sie też luki w numeracji.

Jakie macie pomysły na takie przesuwanie rekordów, będe wdzięczny za pomoc
Dzięki i pzdr
Cysiaczek
Popraw proszę tytuł topiku na zgodny z zasadami forum Przedszkole
Inzabi
Skoro masz pole pozycja, to sortujesz według tego pola.
A ustawiać możesz albo ręcznie, ja mam co 10 ustawione, w razie gdyby była potrzeba wstawienia coś w środek, albo ustawiać automatem, dodająć np. +10 do największej wartości w polu pozycja.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.