Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: pole z pozycja
Forum PHP.pl > Forum > Bazy danych > MySQL
jarmiar
mam w swoim skrypcie tabele ze zdjeciami wraz z polem, które informuje o pozycji danego zdjecia

czy w mysqlu istnieje mechanizm pozwalający na automatyczną aktualizację tego pola po usunięciu pewnego rekordu

przykład: mam taki porządek:

src | pos
a.jpg 1
2.jpg 2
3.jpg 3
4.jpg 4

usuwam 3.jpg i pola tabela przybiera postac:

a.jpg -> 1
2.jpg -> 2
4.jpg -> 3

triggery mnie nie interesują bo skrypt będzie odpalany na serwerach współdzielonych, gdzie są zablokowane

Sephirus
  1.  
  2. mysql_query("DELETE FROM zdjecia WHERE pozycja = {$pozycja}");
  3. mysql_query("UPDATE zdjecia SET pozycja = pozycja - 1 WHERE pozycja > {$pozycja}");
  4.  


? smile.gif
jarmiar
tak wiem, mi chodzi o to czy istnieje taki gotowy mechanizm do składowania tego typu danych

btw Twoje rozwiązanie jest niewystarczające, bo jest kilka przypadków smile.gif
nospor
Cytat
tak wiem, mi chodzi o to czy istnieje taki gotowy mechanizm do składowania tego typu danych

Nie ma.

ps: a co ci przeszkadza że pozycja nie będzie pokolei?
Sephirus
Cytat(jarmiar @ 8.01.2013, 12:01:49 ) *
tak wiem, mi chodzi o to czy istnieje taki gotowy mechanizm do składowania tego typu danych

btw Twoje rozwiązanie jest niewystarczające, bo jest kilka przypadków smile.gif


Jakich przypadków? ja jedynie podsuwam pomysł smile.gif
jarmiar
To, że skrypt jsowy zczytuje pozycję elemendu dom i ajaxem wysyłam aby pobrać zdjęcie smile.gif

Ok dzięki za info.
Sephirus
Aby pobrać zdjęcie n-te wystarczy dać dla "LIMIT n,1" albo kombinować w ten sposób smile.gif choć to mało wydajne

EDIT: tak w ogóle to jakiś anty-wzorzec jak dla mnie... brać pod uwagę kolejność... element DOM w którym masz to coś, może miec jakiś atrybut itp mówiący które to zdjęcie i wystarczy wysłać to AJAXem... - IMO
nospor
Cytat
To, że skrypt jsowy zczytuje pozycję elemendu dom i ajaxem wysyłam aby pobrać zdjęcie
wystarczy użyć LIMIT w mysql by pobrać interesujące cię zdjęcie n-te z kolei smile.gif
jarmiar
No fakt, dzięki smile.gif
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.