ich versuch grad ne liste zu erstellen, bei der der user die reihenfolge der einzelnen elemente verschieben kann.
das problem dabei was ist der effektivste weg da ne sortierungsspalte einzuführen ..
meine idee:
einen integer, und bei jedem verschieben jeweils die zahlen vertauschen.
(auslesen der darunter/darüber liegenden nummer, eintrag darüber auf '-1' setzen, den aktuellen auf das ausgelesene, den darüber auf den alten des aktuellen)
problem: 4(!) queries
da muss es doch was effektiveres geben, n doppeltes SET wäre ja recht angenehm, nur find ich da irgendwie nix
liste mit veränderbarer reihenfolge
liste mit veränderbarer reihenfolge
ich will mein auto polieren ! ..
ja .. ich weiß .. man kann das mit nem lappen machen .. aber ICH will unbedingt nen hammer nehmen .. WIE geht das
ja .. ich weiß .. man kann das mit nem lappen machen .. aber ICH will unbedingt nen hammer nehmen .. WIE geht das

Das vertauschen geht auch mit einer SQL-Abfrage...
Erstelle TEST-Tabelle
Vertausche 2 mit 3
Grüße
Dennis
Erstelle TEST-Tabelle
Code: Alles auswählen
CREATE TABLE `test` (
`Id` int(6) unsigned NOT NULL auto_increment,
`posi` int(4) default NULL,
PRIMARY KEY (`Id`)
) TYPE=MyISAM;
INSERT INTO `test` VALUES (1,1);
INSERT INTO `test` VALUES (2,2);
INSERT INTO `test` VALUES (3,3);
INSERT INTO `test` VALUES (4,4);
INSERT INTO `test` VALUES (5,5);
Code: Alles auswählen
update test a, test b
SET a.posi = 2 , b.posi = 3
WHERE a.posi = 3 AND b.posi = 2
Dennis