Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL] Zmiana pozycji rekordów w dwóch warunków
Forum PHP.pl > Forum > Przedszkole
Paeeo
Witam!

Mam skrypt do zmian pozycji wpisów w bazie. Chciałbym dodać do niego jeszcze jeden warunek.

  1. if($_GET['menu'] == 'lista' && $_GET['movelista'] && $_GET['a'] && array('up', 'down')) {
  2. $id = (int)$_GET['movelista']; //id wpisu
  3. $typ = (string)$_GET['a']; // kategoria
  4. $sign = $_GET['move'] == 'up' ? '<' : '>';
  5. $sort = $_GET['move'] == 'up' ? 'DESC' : 'ASC';
  6. //$a = mysql_fetch_object(mysql_query('SELECT * FROM projekty WHERE typ = ' . $typ)); //probowałem coś na takiej zasadzie...
  7. $r = mysql_fetch_object(mysql_query('SELECT pozycja FROM projekty WHERE id = ' . $id));
  8. $cPos = $r->pozycja;
  9. $s = mysql_fetch_object(mysql_query('SELECT pozycja, id FROM projekty WHERE pozycja ' . $sign . $cPos .' ORDER BY pozycja ' . $sort));
  10. if(!is_object($s)){}
  11. mysql_query(sprintf('UPDATE projekty SET pozycja = %s WHERE id = %s', $s->pozycja, $id));
  12. mysql_query(sprintf('UPDATE projekty SET pozycja = %s WHERE id = %s', $cPos, $s->id));
  13. }


Obecnie skrypt zmienia pozycje wpisów na zasadzie pobierania poniższego/wyższego wpisu i zamianie wartości pola "pozycja".
Chciałbym dodać jeszcze jeden warunek, a mianowicie podział na kategorie, czyli najpierw wybranie odpowiednich wpisów o danej kategorii (pobranie kategorii metodą get), a dopiero potem, gdy już są tylko te wpisy z daną kategorią, zamiana wartości pola "pozycja".

Nie wiem czy jasno to przedstawiłem: najpierw weś tylko te z daną kategorią, potem zamieniaj wyższą/niższą pozycję.

Dziękuję za jakieś wkazówki i pomoc. Pozdrawiam!
czychacz
nie wiem, w czym problem - dodajesz pole z kategorią do tabeli z wpisami i pozycję ustawiasz od 0 (czy tam innej liczby:P) w górę (lub w dółtongue.gif) na podstawie tego, czy wpisy są z tej samej kategorii
Kod
kat 0 poz 0
kat 0 poz 1
kat 1 poz 0
kat 0 poz 2
kat 0 poz 3
kat 1 poz 2
kat 1 poz 3
kat 2 poz 0
kat 1 poz 4

później do zmiany pozycji dodajesz warunek dotyczący kategorii
kod do tego jest tak banalny, że nie ma potrzeby go pisać - to są podstawy
Paeeo
No właśnie chodzi mi o ten warunek, bo na chwilę obecną mam w tabeli kolumnę kategorii. Teraz jak ktoś obniży pozycję wpisu, a ta przeskoczy inny wpis innej kategorii to użytkownik musi się naklikać, żeby zaczęło się przesuwać do góry lub dołu. Chodzi o to, że najpierw chciałbym wyodrębnić wpisy danej kategorii, a potem je przemieszczać góra dół. Dzięki.
Paeeo
up
Paeeo
Podbijam, proszę o pomoc.
Paeeo
up, pomocy?
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.