Avatar billede w13 Novice
11. januar 2006 - 13:33 Der er 2 kommentarer og
1 løsning

Vis 5 nyeste billeder fra forskellige undermapper

Hej Eksperter.

Jeg har benyttet mig af følgende kode for at få vist de 5 nyeste billeder, der er blevet lagt i undermapper til en bestemt mappe på min server:
------------------------------------
<%Set fso = CreateObject("Scripting.FileSystemObject")

fileDate = ""
fileName = ""
filePath = ""
FileNr = 1
function saveFiles (foldernavn)
  Set objFolder = fso.getFolder( foldernavn )
  Set objFiles = objFolder.Files

  for each file in objFiles
  if instr(1,"bmp,gif,jpg,png,jpeg,tif",lcase(fso.GetExtensionName(file.name)))>0 then
    if isDate(fileDate) then
      if CDate(file.DateLastModified) > CDate(fileDate) then
        fileDate = file.DateLastModified
        fileName = file.name
        filePath = file.Path
      end if
    else
      fileDate = file.DateLastModified
      fileName = file.name
      filePath = file.Path
    end if
  end if

If FileNr < 6 Then
sti = replace(filePath,Server.MapPath("/"),"",1,-1,1)
sti = replace(sti,"\","/")
Response.Write "<a title=""Vis billed i stort format i galleriet"" href=""/gallery.asp?ShowPic=" & sti & """><img src=""" & sti & """ width=""120"" height=""120"" class=""opacity1"" onmouseover=""this.className='opacity2'"" onmouseout=""this.className='opacity1'"" border=""0""></a>&nbsp;"
End If

FileNr = FileNr + 1

  next

  For each Folder in objFolder.SubFolders
    call saveFiles (Folder.path)
  next
 
  Set objFolder = Nothing
  Set objFiles = Nothing
end function

relativSti = "/upload/downloads/billed"
strPhysicalPath = Server.MapPath(relativSti)
Set objFolder = fso.getFolder( strPhysicalPath )
For each Folder in objFolder.SubFolders
  call saveFiles (folder.Path)
next

FileNr = ""

Set objFolder = Nothing
Set fso = Nothing%>
------------------------------------
Men desværre virker den ikke ordentligt, når en ny mappe oprettes og der lægges et billed i den. Så viser den nemlig kun det ene billed 5 gange.

Er der nogen, der har en bedre kode?

Mvh.
W13
Avatar billede Slettet bruger
12. januar 2006 - 05:52 #1
Måske en lidt større ting, men du burde få registrerer dine billeder i en database så du kan lave den slags udtræk, den metode du har fungere bevars men det tager jo en krig hvis der kommer rigtigt mange billeder.

Der er lidt lettere med SQL server syntax at lave select top 5 * from billeder order by dato desc

Du registrere dato og stien til billedet.
Avatar billede w13 Novice
12. januar 2006 - 13:20 #2
Nåå, ja. Selvfølgelig! Tænkte jeg slet ikke på.
Så hvis du lige opretter svar... =)
Avatar billede Slettet bruger
12. januar 2006 - 13:53 #3
svar;)
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