hi,
Da Du das nicht zu verstehen scheinst, ein kleines Beispiel: Bilder Nummer '1', '3', '4', '6', '7' gefunden => Beim Anzeigen werden die Bilder ansteigend sortiert nach 'Nummer' ausgegeben.
für die anzeige der bilder hast du recht, aber wie fügst du ein bild zwischen pos 2 und 3 ein? wohl so:
(pseudocode)
list = select name,pos from images order by pos asc;
update images set pos=pos+1 where pos>list[nr2].pos;
insert into images (name,pos) values (newname,list[nr3].pos);
die erste zeile kann ich mir aber sparen, wenn die nummerierung FORTLAUFEND ist. pos ist mein index über den ich direkt auf die namen der bilder an pos zugreifen kann ohne vorher die ganze datenbank in einem array speichern zu müssen um rauszufinden wie das bild an position pos heißt!
ich habe 3 funktionen:
-
insert(pos,name) // name nach pos einfügen
-
change(pos1,pos2)// selbsterklärend
-
delete(list) // alle positionen in list löschen
-
und 2) werden mit abstand am häufigsten aufgerufen also sollen sie auch so schnell wie möglich sein was ich aber nur mit einem fortlaufenden index garantieren kann. 3) wird selten aufgerufen also kann sie etwas zeitaufwendiger sein...
so und jetzt kommst du...
gruß, der undankbare Wurm!