/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Dynamisk ændring af sortering i menu
Fra : Jens Poulsen


Dato : 14-09-04 13:56

Hej.

Jeg har lavet et lille admin-system, hvor man kan oprette/ændre menupunkter
i sin hjemmeside-menu. Jeg kunne godt tænke mig at lavet det sådan, at man
ved visningen af hvert punkt får muligheden for at klikke på "Flyt X antal
pladser op" og "Flyt X antal pladser ned".
Det er umiddelbart ikke det store problem, at få flyttet f.eks. to pladser
op.... men hvordan får man så det punkt, hvis plads man netop har taget,
rykket tilbage.

Eks.:
Menupunkt 1.0.0 (1)
Menupunkt 1.1.0 (1)
Menupunkt 1.2.0 (2)
Menupunkt 1.3.0 (3)
Menupunkt 1.4.0 (4)
Menupunkt 1.4.1 (1)
Menupunkt 1.4.1 (2)
Menupunkt 2.0.0 (1)
Menupunkt 3.0.0 (2)
Menupunkt 4.0.0 (3)
Menupunkt 5.0.0 (4)
Menupunkt 5.1.0 (1)
Menupunkt 5.2.0 (2)
Menupunkt 5.3.0 (4)

- tallet i () er sorteringsrækkefølgen
....osv.

Lad os nu f.eks. antage, at jeg gerne vil have flyttet Menupunkt 1.3.0
f.eks. 2 pladser op - altså til at stå før Menupunkt 1.1.0 - men de to
punkter skal ikke bare bytte plads - for rækkefølgen skal nu være
Menupunkt 1.3.0 (1)
Menupunkt 1.1.0 (2)
Menupunkt 1.2.0 (3)
Menupunkt 1.4.0 (4)

....vodden i al verden laver man det - og det samme skal jo så være gældende
hvis man vil flytte et punkt ned i stedet for op.


mvh.
Jens



 
 
Christian M. Nielsen (15-09-2004)
Kommentar
Fra : Christian M. Nielsen


Dato : 15-09-04 11:17

Det er lidt svært at sige præcist hvordan når men ikke kender din database
opbygning. Hvis du har et nummer der angiver rækkefølgen på hvert menupunkt,
så kan du gøre det på denne måde.

1:) vælg det menupunkt det skal skiftes. Træk det antal pladser fra som det
skal flyttes. Giv det det nye række følge nummer. Vælg det menupunkt som du
skal flytte ned. Læg det antal pladser til som det skal flyttes ned. Gem den
nye værdi i databasen.

Jeg har selv brugt det og her er koden. Bemærk at jeg kun flytter 1 plads af
gangen og der undersøges for om placeringen allerede er nummer et (så der
ikke kan flyttes længere op) Du kan selv omskrive funktionen, så den flytter
punktet ned i stedet.

Function FlytOp(intArticleID)

Dim intOp, intArticleListOrder
intArticleListOrder = request.querystring("ArticleListOrder") '<-- hvilket
nummer har menueen nu

intOp = (intArticleListOrder - 1) '<-- hvor mange pladser skal dete
flyttes

if intOp > 0 then '<-kontroller at det ikke er det første punkt i
rækkefølgen
Dim strSQL, oRs, oRs1, strSQL1

strSQL1 = "SELECT ArticleListOrder FROM tblArticle WHERE ArticleListOrder
= "& intOp '<-- vælg det punkt som skal flyttes ned
Set oRs1 = openRecordset(strSQL1)
oRs1("ArticleListOrder") = intArticleListOrder
oRs1.Update

strSQL = "SELECT ArticleListOrder FROM tblArticle WHERE (ArticleID = " &
intArticleID & ")" '<-- vælg det punkt som skal flyttes op. intArticleID er
et autonummer i Access, skal sendes med Querystring
Set oRs = openRecordset(strSQL)
oRs("ArticleListOrder") = intOp

oRs.Update
end if


End Function

--

Mvh Christian http://www.cmnielsen.dk
What capital has 164 letters in its name? See my web page to find out.
Nyeste Artikel : Crenicichla compressiceps.
http://cmnielsen.dk/crenicichla.htm
The scary thing about looking for truth is that you might find it.


"Jens Poulsen" <kolliandermanden@hotmail.com> wrote in message
news:4146ea59$0$204$edfadb0f@dread16.news.tele.dk...
> Hej.
>
> Jeg har lavet et lille admin-system, hvor man kan oprette/ændre
> menupunkter
> i sin hjemmeside-menu. Jeg kunne godt tænke mig at lavet det sådan, at man
> ved visningen af hvert punkt får muligheden for at klikke på "Flyt X antal
> pladser op" og "Flyt X antal pladser ned".
> Det er umiddelbart ikke det store problem, at få flyttet f.eks. to pladser
> op.... men hvordan får man så det punkt, hvis plads man netop har taget,
> rykket tilbage.
>
> Eks.:
> Menupunkt 1.0.0 (1)
> Menupunkt 1.1.0 (1)
> Menupunkt 1.2.0 (2)
> Menupunkt 1.3.0 (3)
> Menupunkt 1.4.0 (4)
> Menupunkt 1.4.1 (1)
> Menupunkt 1.4.1 (2)
> Menupunkt 2.0.0 (1)
> Menupunkt 3.0.0 (2)
> Menupunkt 4.0.0 (3)
> Menupunkt 5.0.0 (4)
> Menupunkt 5.1.0 (1)
> Menupunkt 5.2.0 (2)
> Menupunkt 5.3.0 (4)
>
> - tallet i () er sorteringsrækkefølgen
> ...osv.
>
> Lad os nu f.eks. antage, at jeg gerne vil have flyttet Menupunkt 1.3.0
> f.eks. 2 pladser op - altså til at stå før Menupunkt 1.1.0 - men de to
> punkter skal ikke bare bytte plads - for rækkefølgen skal nu være
> Menupunkt 1.3.0 (1)
> Menupunkt 1.1.0 (2)
> Menupunkt 1.2.0 (3)
> Menupunkt 1.4.0 (4)
>
> ...vodden i al verden laver man det - og det samme skal jo så være
> gældende
> hvis man vil flytte et punkt ned i stedet for op.
>
>
> mvh.
> Jens
>
>



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste