PHP mysql arrays

Tags:    php array

Hey

Jeg forsøger at lave en funktion, som gør at når jeg opretter en ny side i min menu, så kan jeg vælge om den skal placeres efter en bestemt side. Lidt ligesom i phpMyAdmin, hvor du kan vælge om tabellens kolonner skal placeres i starten, i slutningen eller efter en bestemt kolonne.

Eksempel:
Fold kodeboks ind/udKode 




Jeg hiver noget data ud fra mysql:

Fold kodeboks ind/udPHP kode 


Det vil jeg gerne have hivet ud, så jeg kan arbejde med det som i dette array:
(tallene 11, 12, 13 er id, og tallene 1, 2, 3 er menuorder)
Fold kodeboks ind/udPHP kode 



Men så vil jeg gerne indsætte ny data imellem fx. id 11 og 12, så det kommer til at se sådan her ud:

Fold kodeboks ind/udPHP kode 



Jeg er rimeligt blank på dette.



4 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Jeg tænker lidt på noget array_splice.

En lidt primitiv løsning:
Fold kodeboks ind/udPHP kode 


I overstående kode vil den smide et nyt menu-punkt ind hvor værdien er "downloads" ind efter "biografi" da vores valgte index skal være lig med 3. Hvis du vil vælge at det nye punkt skal smides ind i slutningen af array'et, skal du skrive:

Fold kodeboks ind/udPHP kode 


Jeg har ikke lige haft tid til at lave det igennem en database endnu. Men det er noget lign. overstående kode-eksempler. Så kan du vel bare køre dit array igennem en løkke, og smide de nye værdier fra $val op i databasen hvor menu-punkterne skal sorteres efter.

Håber at jeg forstod spørgsmålet ordenligt.



Indlæg senest redigeret d. 19.09.2012 13:01 af Bruger #16025
Okay, jeg har brygget dette sammen:

Fold kodeboks ind/udPHP kode 



Denne del, skal jeg så have lavet om, så det er hentet fra mysql.
Fold kodeboks ind/udPHP kode 

Hvor 0-4 er menuorder, og 100-500 er id.

Jeg har prøvet sådan her:

Fold kodeboks ind/udPHP kode 


Men det hverken rapporter fejl, eller giver anden respons.

Og jeg ved ikke engang om det er muligt at gøre det sådan?



Fold kodeboks ind/udPHP kode 


Prøv overstående kode.



Hmm, jeg får nu disse beskeder:

Fold kodeboks ind/udKode 


Fold kodeboks ind/udPHP kode 




Hov...

Lige meget Fandt ud af det. Fik lavet $result = mysql_query($sql); 2 gange.


Men tilgengæld, var det meningen at keys i arrayet skulle være lig med menuorder, men den skriver sådan her i stedet:

Fold kodeboks ind/udKode 




Indlæg senest redigeret d. 27.09.2012 17:37 af Bruger #10114
t