Avatar billede dk_zerocool Nybegynder
28. juli 2003 - 14:16 Der er 1 kommentar og
1 løsning

Visning af tumbnails med 4 i hver række

Er der nogen der kan hjælpe mig her, den udskriver kun ét billede i hver række ???

<HEAD>
</HEAD>
<BODY>
<table border="0" width="100%">
<%
' Vi sætter variablen ImageDir til at være det interessante katalog
ImageDir = "/xsmo/gallery/thumbnails/"

cellCount = 0

' Vi laver et objekt, der kan navigere i filsystemet = filesystemobject
Set objFS = CreateObject("Scripting.FileSystemObject")

' Vi bruger filsystemobjektet til at åbne det interessante katalog
Set objFolder = objFS.GetFolder(Server.MapPath(ImageDir))

' Vi putter alle filer i kataloget ind i variablen objFiles
Set objFiles = objFolder.Files

' Her tager den en fil ad gangen og skriver den - dvs billedet - på skærmen
For Each Image In objFiles
if right(image.name,3) = "gif" then Response.Write "<img src=" & ImageDir & Image.Name &"> "
if right(image.name,3) = "GIF" then Response.Write "<img src=" & ImageDir & Image.Name &"> "
if right(image.name,3) = "jpg" then Response.Write "<img src=" & ImageDir & Image.Name &"> "
if right(image.name,3) = "JPG" then Response.Write "<img src=" & ImageDir & Image.Name &"> "
if right(image.name,3) = "bmp" then response.write "<img src=" & ImageDir & Image.Name &"> "
if right(image.name,3) = "BMP" then response.write "<img src=" & ImageDir & Image.Name &"> "

cellCount = cellCount + 1

if cellCount = 1 then Response.Write "<tr valign=""middle"">" & vbCrlf
                Response.Write "<td width=""120"" align=""center"">"
if cellCount = 4 then Response.Write "</tr>" & vbCrlf

cellCount = 0

Next

Set objFS = Nothing

%>
</td>
</table>

</BODY>
</HTML>
Avatar billede eagleeye Praktikant
28. juli 2003 - 14:30 #1
Du kan bruge LCase som gøre en streng til små bogstaver så slipper du for så mange if sætninger, samt lave en liste med efternavne som du vil vise sådan her, for så kan man udnytte at det er en if sætningen som viser billedet og dermed kommer der ikke tomme celler:

Du kan bare ændre variablen  maxPrRow  alt efter hvor mange du vil havde på siden så din kode bliver:


<table border="0" width="100%">
<%
' Vi sætter variablen ImageDir til at være det interessante katalog
ImageDir = "/xsmo/gallery/thumbnails/"

maxPrRow = 4
noPrRow = 0

' Vi laver et objekt, der kan navigere i filsystemet = filesystemobject
Set objFS = CreateObject("Scripting.FileSystemObject")

' Vi bruger filsystemobjektet til at åbne det interessante katalog
Set objFolder = objFS.GetFolder(Server.MapPath(ImageDir))

' Vi putter alle filer i kataloget ind i variablen objFiles
Set objFiles = objFolder.Files

' Her tager den en fil ad gangen og skriver den - dvs billedet - på skærmen
For Each Image In objFiles
  if inStr(1,"gif,jpg,bmp",LCase(objFS.GetExtensionName(Image.name))) > 0 then
    if noPrRow = 0 then Response.Write "<tr>"
 
    Response.Write "<td><img src=" & ImageDir & Image.Name &"></td>"
   
    noPrRow = noPrRow + 1
    if noPrRow = maxPrRow then
      Response.Write "</tr>"
      noPrRow = 0
    end if
  End if
Next
if noPrRow > 0 then Response.Write "</tr>"

Set objFS = Nothing
%>
</table>
Avatar billede dk_zerocool Nybegynder
28. juli 2003 - 14:39 #2
Det virker bare, tak for hjælpen...

lukker spørgsmålet
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester