20. februar 2001 - 13:16Der er
10 kommentarer og 2 løsninger
Paging i For Each løkke
Er det muligt at lave en form for Paging i en For Each løkke ? Jeg har nemlig en funktion der søger et bibliotek igennem for billeder, og derefter skriver filnavnene ud. Men da det tit drejer sig om flere hundrede billeder vil jeg gerne have det delt op i nogle flere sider. Og hvis det var muligt ville jeg meget gerne undgå at skulle ligge den alle sammen ind i en database. For paging fra en Database har jeg ingen problemer med. Da ville det være nemmere hvis siden i sig selv bare kunne styre det. Så er det muligt og i såfald hvordan ?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hvis du lister billede 1-10, laver du en next-link med fil.asp?next=11 I fil.asp skal du så sørge for at spole forbi billede 1-10, sådan at du starter med billede 11 osv.
antal=0 next = request(\"next\") visfil = false IF next=\"\" THEN visfil=true For Each File in Files IF visfil THEN antal=antal+1 IF antal>10 THEN response.write(\"<A HREF=\"\"fil.asp?next=\" & lcase(file.name) & \"\"\">next</A>\") EXIT FOR END IF response.write lcase(file.name) & \"<br>\" ELSE IF next=file.name THEN visfil=true END IF next
Ok det virker så fint nok hvis jeg ændre lidt i det. Sådan her:
antal=0 nexts = request(\"next\") visfil = false IF nexts=\"\" THEN visfil=true For Each File in Files IF visfil THEN antal=antal+1 IF antal>10 THEN response.write(\"<A HREF=\"\"showfiles1.asp?next=\" & lcase(file.name) & \"\"\">next</A>\") EXIT FOR END IF response.write lcase(file.name) & \"<br>\" ELSE IF nexts=file.name THEN visfil=true END IF next
Men hvordan får jeg de så sådan så jeg både kan blade frem og tilbage ?
Og så glemmer den forresten også en fil hver gang men skriver viddere til næste side.
Her er hele koden jeg bruger måske det gjælper lidt:
<% filepath = \"C:\\Inetpub\\wwwroot\\Img\\\"
Set FileSystem = CreateObject(\"Scripting.FileSystemObject\") Set MainFolder = FileSystem.GetFolder( filepath ) Set Files = MainFolder.Files
response.write \"Directory i : \" & filepath & \"<br><br>\"
antal=0 nexts = request(\"next\")
visfil = false IF nexts=\"\" THEN visfil=true For Each File in Files IF visfil THEN antal=antal+1
IF antal>10 THEN response.write(\"<A HREF=\"\"showfiles1.asp?next=\" & lcase(file.name) & \"\"\">next</A> <br>\") EXIT FOR END IF response.write lcase(file.name) & \"<br>\" ELSE IF nexts=file.name THEN visfil=true END IF next
For Each File in Files IF next=file.name THEN visfil=true IF visfil THEN antal=antal+1
IF antal>10 THEN response.write(\"<A HREF=\"\"showfiles1.asp?next=\" & lcase(file.name) & \"\"\">next</A> <br>\") EXIT FOR END IF response.write lcase(file.name) & \"<br>\" END IF next
For at gøre det, så laver vi lige om til at den tæller filerne.
antal=0 filenr = 0 start = request(\"start\")
IF start=\"\" THEN start=1 IF start <1 THEN start=1
For Each File in Files filenr = filenr + 1 IF start>=filenr THEN antal=antal+1
IF antal=1 AND filenr>10 THEN response.write(\"<A HREF=\"\"showfiles1.asp?start=\" & filenr-10 & \"\"\">prev</A><br>\") IF antal>10 THEN response.write(\"<A HREF=\"\"showfiles1.asp?start=\" & filenr & \"\"\">next</A><br>\") EXIT FOR END IF response.write lcase(file.name) & \"<br>\" END IF Next
Ja jeg er snart ked af at sige det men det virker da slet ikke nu. Den viser kun den først fil og ikke andet. Og jo jeg skol også nok slev lave noget. Men sidder skam og knogler forvildt for at gennemskue koden men lige med det her har jeg altså mine problemer. Men hvad kan der være galt i den nu?
Ja du komme ikke helt med det jeg søgte men du kom da med et svar så då får haldelen af Pointene. Har selv fundet en hel anden løsning at løse problemet på.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.