Och sedan om det finns fler bilder så skall det vara en pagin osv. Tror ni förstår idéen. Jag har inte fått så mycket att funka än, men hur gör man och är det möjligt?
Skall man använda sig med pagin så måste man väll först räkna antalet bilder i mappen???
<% Option Explicit
Dim objFSO, objFolder, objFile, File
Set objFSO = CreateObject ("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder ("C:\InetPub\wwwroot\lista\bilder")
%>
<html>
<head>
<title>Bilder...</title>
</head>
<body>
Antalet bilder i mappen:
<%
For Each objFile In objFolder.Files
File = File + 1
Next
response.write File
%>
Bilderna i mappen:
<TABLE>
<TR>
<%
For Each objFile In objFolder.Files
IF LCase(Right(objFile.Name, 4)) = ".jpg" THEN
response.write "<TD><IMG src=bilder\" & objFile.Name & " width=100 heigth=100></TD>"
END IF
Next
%>
</TR>
</TABLE>
<%
Set objFSO = Nothing
Set objFolder = Nothing
%>
</body>
</html>
Jo, men det som har tänkt är ex. att jag har 18 landskapsbilder jag vill lista, om jag i sådana fall skulle gå genom en databas så skulle det senare i längden bli jobbigt.
Därför vill jag visa bilderna direkt från mappen, men efter ett tag så kanske jag kommer att ha 35 landskapsbilder, vilket blir lite mycket att visa på samma gång och därför vill jag ha en pagin-funktion.
'## -- startar tabellen utanför loopen --
Response.Write ("<table border=""1"" cellpadding=""4"" cellspacing=""0"" width=""650""><TR>")
'## -- Loopen av bilderna börjar
For I = intStartID To ((intStartID + intPageSize) -1)
'intId = arrRecords(0,I)
strImageName = arrRecords(0,I)
'## -- skriv ut en bild --
Response.Write "<TD><IMG src=""bilder/" & strImageName & """>"
If I = UBound(arrRecords, 2) Then Exit For
Next
'## -- stänger tabellen efter loopen --
Response.Write("</TR></table>")
Hittade någonstans att man kan göra såhär:
<%
Nynr = 0
Do until News.EOF
'skriv ut
IF Nynr mod 4 = 0 and nynr > 0 then %><p> <%
end if
Nynr = Nynr + 1
News.MoveNext
Loop
%>
Men hur får jag ihop det hela... Sedan tänkte jag på det som du skrev, jag visar ju max 9 bilder åt gången, men när bilderna tar slut så kanske det bara visas 5 och det kan man ju inte dela på 3!
'## -- startar tabellen utanför loopen --
Response.Write ("<table border=""1"" cellpadding=""4"" cellspacing=""0"" width=""650""><TR>")
'## -- Loopen av bilderna börjar
For I = intStartID To ((intStartID + intPageSize) -1)
'intId = arrRecords(0,I)
intCounter = intCounter + 1
strImageName = arrRecords(0,I)
'## -- skriv ut en bild --
Response.Write "<TD><IMG src=""bilder/" & strImageName & """>"
If I = UBound(arrRecords, 2) Then Exit For
'## -- Kollar om tre bilder har gått
If intCounter mod 3 = 0 then
response.write "<TR>"
End IF
Next
'## -- stänger tabellen efter loopen --
Response.Write("</TR></table>")
men jag har en liten fråga.....
när jag tittar på <html> - koden i webläsaren så är det ett väldigt långt mellanrum mellan
<IMG src="bilder/bilden.jpg
"\>
varför blir det så?
och den skriver ut en extra <tr></tr> i slutet som är helt tom? :q
For i = 0 To ubound(arrMyArray,2)
If intCheck = 1 Then Response.Write "<tr>"
Response.Write "<td>någon info</td>"
If intCheck = 3 Then
Response.Write "</tr>"
intCheck = 0
End If
intCheck = intCheck + 1
Next
'## -- startar tabellen utanför loopen --
Response.Write ("<table border=""1"" cellpadding=""4"" cellspacing=""0"" width=""650""><TR>")
'## -- Loopen av bilderna börjar
For I = intStartID To ((intStartID + intPageSize) -1)
'intId = arrRecords(0,I)
intCounter = intCounter + 1
strImageName = arrRecords(0,I)
'## -- skriv ut en bild --
response.write "<TD><IMG src=""bilder/" & strImageName & """></TD>"
If I = UBound(arrRecords, 2) Then Exit For
'## -- Kollar om tre bilder har gått
IF intCounter = 9 Then
response.write ""
ELSEIF intCounter mod 3 = 0 then
response.write "</TR><TR>"
End IF
Next
'## -- stänger tabellen efter loopen --
Response.Write("</TR></table>")
Inte kanske för att man skall bry sig, men när man tittar på <html> koden som skrivs ut så blir det en ända lång rad
Och sedan vid:
response.write "<TD><IMG src=""bilder/" & strImageName & """></TD>"
Blir:
<TD><IMG src="bilder/Pict0006.jpg
"\>\</TD\>
Så blir det ett jätte långt mellanrum i <html> koden, varför detta?