Jeg arbejder med et script til hentning af billedfiler i en
folder. Tanken er at man skal kunne sætte antal billeder pr side
og antal billeder på tværs. Eks. 9 billeder 3 på tværs, vil altså
give 3 rækker.
Jeg er tæt på at få det til at spille, men har svært ved at
gennemskue nogle detaljer.
Billederne skal smides i tabel, så der er lidt styr på
detaljerne, og mulighed for styring af layout.
Jeg er ret ny med lykker, og den driller en del, særlig det med
line funktion: (intFile < (intLineSize*intLine))
Skal der +1 ???? når jeg ændrer
Generelt kan jeg nok godt bruge gode råd i denne kode. Men jeg
tror på det kan blive fedt. Hjælp please.
script begynd:
<%
'billedfolder
ImageDir = "images/billedbog/" ' Mappen med filerne
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFS.GetFolder(Server.MapPath(ImageDir))
Set objFiles = objFolder.Files
intPage = Request.Querystring("page")
If isNumeric(intPage) = False Or intPage < 1 Then
intPage = 1
End If
intLine = Request.Querystring("line")
If isNumeric(intLine) = False Or intLine < 1 Then
intLine = 1
End If
intPageSize = 9 ' Antal filer på hver side
intLineSize = 3 ' antal filer per linie
intImgCount = objFiles.Count
intPageCount = -Int(-(intImgCount/intPageSize))
intLineCount = -Int(-(intImgCount/intLineSize))
Response.Write "<p><strong>Der er " & intImgCount & " billeder i
billedbogen - "
Response.Write "viser side " & intPage & " af " & intPageCount &
":</strong></p>"
'tabel starter
Response.Write "<table align='center' border='1' cellspacing='10'
cellpadding='5'><tr>"
'skriv billede
For Each Image In objFiles
intFile = intFile +1
If (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =<
(intPageSize*intPage)) And (intFile < (intLineSize*intLine)) Then
Response.Write "<td><a href=" & ImageDir & Image.Name & "
target='blank'><img src='" & ImageDir & Image.Name & "'
width='70' /></a></td>"
Elseif (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =<
(intPageSize*intPage)) And (intFile = (intLineSize*intLine)) Then
Response.Write "</tr><tr>"
Elseif (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =<
(intPageSize*intPage)) And (intFile < (intLineSize*intLine)) Then
Response.Write "<td><a href=" & ImageDir & Image.Name & "
target='blank'><img src='" & ImageDir & Image.Name & "'
width='70' /></a></td>"
Elseif (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =<
(intPageSize*intPage)) And (intFile = (intLineSize*intLine)) Then
Response.Write "</tr><tr>"
Elseif (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =<
(intPageSize*intPage)) And (intFile < (3*intLineSize*intLine))
Then
Response.Write "<td><a href=" & ImageDir & Image.Name & "
target='blank'><img src='" & ImageDir & Image.Name & "'
width='70' /></a></td>"
Elseif (intFile >= ((intPage-1)*intPageSize)+1) And (intFile =<
(intPageSize*intPage)) And (intFile = (3*intLineSize*intLine))
Then
Response.Write "<td><a href=" & ImageDir & Image.Name & "
target='blank'><img src='" & ImageDir & Image.Name & "'
width='70' /></a></td>"
Else
Response.Write "</tr>"
End If
Next
Response.Write "</tr></table>"
'skriv antal billedesider
strScriptName = Request.Servervariables("ScriptName")
Response.Write "<p>Gå til side "
For i = 1 To intPageCount
Response.Write "<a href=" & strScriptName & "?page=" & i & ">" &
i & "</a> "
Next
Response.Write "</p>"
Set objFS = Nothing
%>
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! =>
http://www.html.dk/tutorials