Ein Array nach einem anderen sortieren? |
dieselboy71
Pixelschubser Threadstarter
Beiträge: 5 |
Hallo,
durch ein formular erhalte ich vom anwender ein array mit daten. diese daten sollen aber vom anwender selber sortiert werden.
ich habe mir also überlegt, das der user seine sortierreihenfolge selber in ein neues formular einträgt. daraus ergibt sich dann folglich ein neues array. wie bekomme ich das nun aber hin, dass das erste array mit den daten nach dem neuen array mit der sortierreihenfolge sortiert wird?
habe mich desbezüglich mal auf php.net in der doku umgeschaut u bin auf array_multisort gestossen. allerdings fällt es mir schwer, das auf mein problem zu portieren. kann mir da jmd weiterhelfen?
|
 Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795 |
kannst du die Sortierreihenfolge nicht durch die Keys bestimmen lassen?
|
 Profil
Editieren
Zitieren
|
dieselboy71
Pixelschubser Threadstarter
Beiträge: 5 |
das array sieht so aus:
[0] info1
[1] info2
[2] info3
usw.
der user soll nun aber selber entscheiden können, welches element an welcher stelle erscheint. bsp. er möchte folgende reihenfolge (diese soll dann später in einer db gespeichert werden):
[1] info2
[2] info3
[0] info1
irgendwie muss der user dem script also mitteilen, in welcher reihenfolge sortiert werden soll. und da dachte ich an das zweite formular, wo er seine gewünschte reihenfolge eingeben kann.
wie setze ich das also um? vielleicht gibt es aber auch eine elegantere lösung?
|
 Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795 |
Du machst das doch mit einem Formular. Dann setz doch mit Javascript die Feldnamen auf 1, 2, 3... zum sortieren. Nachher hast du dann in $_POST alles passend sortiert, da die Feldnamen ja die Keys sind. Musst dem User also nur irgendwie bei der Formulareingabe mit JavaScript die möglichkeit geben das zu sortieren und dabei die Feldnamen anzupassen.
|
 Profil
Editieren
Zitieren
|
dieselboy71
Pixelschubser Threadstarter
Beiträge: 5 |
die variante ist natürlich auch nicht schlecht...
aber das übersteigt dann wirklich mein können. ich hatte mir auch mal überlegt, mit den werten aus den beiden arrays ein drittes zu erstellen. das sollte in etwa so aussehen:
array 1 mit den daten:
[0] info1
[1] info2
[2] info3
usw.
array 2 mit der sortierreihenfolge (sprich positionen):
[0] 3
[1] 1
[2] 2
usw.
die werte des array 2 werden die keys des array 3 und die werte des array 1 werden den keys zugeordnet:
[3] info1
[1] info2
[2] info3
usw.
das ganze zu sortieren müsste dann eigentlich kein grösseres problem mehr darstellen. nur leider bin ich an der erstellung des dritten array gescheitert...
weisst du da rat?
|
 Profil
E-Mail
Editieren
Zitieren
|
languitar
Foren-Team
Beiträge: 2795 |
|
 Profil
Editieren
Zitieren
|