Avatar billede donkazz Nybegynder
05. oktober 2004 - 13:17 Der er 15 kommentarer og
2 løsninger

Vise alle billeder i en folder.

Jeg har en mappe fyldt med udvalgte billeder jeg har taget over weekenden med mit digitalkamera.

Lad os sige at siden hedder www.lalleglad.dk/123/default.asp, og at billederne ligger på www.lalleglad.dk/123/10.01.2004/.
Hvilken kommando skal jeg så bruge for at få en ASP side til at vise alle billederne i mappen på en side? Det er ligegyldigt med thumbnails, da billederne er resizet til 300 px.

Umiddelbart ville jeg gætte på man skulle bruge en eller anden kommando der kunne læse numrene i filnavnene, men da det ikke er alle billederne der skal på nettet, så er der nogle mellemrum mellem tallene. Om det kunne give anledning til problemer ved jeg ikke...

Hvordan gør man?
Avatar billede powernodes Nybegynder
05. oktober 2004 - 13:38 #1
Med fso:

<%
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder("X:\\sti\\mappenavn\\")
Set files = folder.Files

For Each file in Files

Response.Write file.Name & vbCrlf 'skriv <img> ud her; brug file.Name
Next

Set files = folder.Files
Set file = Nothing
Set fso = Nothing
%>
Avatar billede donkazz Nybegynder
05. oktober 2004 - 18:28 #2
Jeg har prøvet med:
<html>
<body>

<%
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder("C:\\Inetpub\\wwwroot\\475\\pics\\01.10.2004-01\\")
Set files = folder.Files

For Each file in Files

Response.Write file.Name & vbCrlf 'skriv <img> ud her; brug file.Name
Response.Write("Test!")
Next

Set files = folder.Files
Set file = Nothing
Set fso = Nothing
%>

</body>
</html>

Bare for at se at den så ville skrive "Test!" mange gange... men der sker ikke noget.. der er bare en blank side, uden indhold..?
Avatar billede donkazz Nybegynder
05. oktober 2004 - 23:17 #3
hahahaha... sløvt.... jeg havde glemt at putte billederne ind i folderen.. ja ja.. det er .. hvad.. onsdag?
Avatar billede donkazz Nybegynder
06. oktober 2004 - 01:13 #4
Men hey, det virker ikke når man smider skidtet on-line?

Så siger den bare:

HTTP 500 - Internal server error
Internet Explorer

Og det er jo klart, når min lokale sti ikke er den samme på serveren. Men hvad skal jeg så ændre stien til?
Avatar billede powernodes Nybegynder
06. oktober 2004 - 08:32 #5
Din sti på serveren selvfølgelig, og den kender jeg af gode grunde ikke :o)

Du kan dog lave en sti.asp indeholdende:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<html>
<head>
<title>Sti</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

<%=Server.MapPath("/")%>

</body>
</html>

-uploade til roden og tilgå siden via browser, så skrives path på webhotel ud, og resten er så til at hitte ud af.
Avatar billede donkazz Nybegynder
06. oktober 2004 - 10:27 #6
Jeg prøvede at skrive stien på serveren, og den blev noget lignende D:\domains\pimpin.dk\www\ et eller andet i den stil, men så opstår der det problem når man prøver at vise billederne, at den leder efter billeder på det lokale D: drev istedet for serverens...?
Avatar billede powernodes Nybegynder
06. oktober 2004 - 10:35 #7
Nej, serveren drev hedder netop D:

Når du siger: D:\domains\pimpin.dk\www\

så vil jeg tro at din path bør hedde:

Set folder = fso.GetFolder("D:\\domains\\pimpin.dk\\wwwr\\475\\pics\\01.10.2004-01\\")

-det forudsætter selvfølgelig at du i din rod på serveren har mappe strukturen:
"475\pics\01.10.2004-01" hvori billederne ligger.
Avatar billede powernodes Nybegynder
06. oktober 2004 - 10:36 #8
Rettelse:
Set folder = fso.GetFolder("D:\\domains\\pimpin.dk\\www\\475\\pics\\01.10.2004-01\\")
Avatar billede donkazz Nybegynder
06. oktober 2004 - 10:59 #9
Nu har jeg prøvet at gøre som du siger:
http://www.pimpin.dk/475/visbilleder.asp

Prøv at se hvad den gør hvis du vælger "Vis Kilde".

img src='D:\Domains\dk\pimpin.dk\www\475\pics\01.10.2004-01\DSCF0065.JPG
Avatar billede donkazz Nybegynder
06. oktober 2004 - 11:07 #10
Sååå virker den...
Prøv at klik på http://www.pimpin.dk/475/visbilleder.asp?Placering=01.10.2004-01

Jeg ændrede det lidt så den kan være dynamisk:

<%

Begivenhed = Request.QueryString("Titel")
Mappe = Request.QueryString("Placering")



%>

<center>
<p style="Font-Family: Verdana; Font-Size: 18px; Color: #333333"><%= Begivenhed %></p>


<font face="Verdana" size="-2"><b>
<%
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder("D:\\Domains\\dk\\pimpin.dk\\www\\475\\pics\\" & Mappe &"\\")
Set files = folder.Files

For Each file in Files

Response.Write("<img src='pics/"& Mappe &"/"& file.Name &"' border='1' galleryimg='false'>")
Response.Write("<br>"& file.Name &"<br><br><br>")

Next

Set files = folder.Files
Set file = Nothing
Set fso = Nothing
%>
Avatar billede donkazz Nybegynder
06. oktober 2004 - 11:07 #11
Takker for hjælpen.. Hvis du vil ha dine point kan du jo lige lave et svar. :)
Avatar billede powernodes Nybegynder
06. oktober 2004 - 11:08 #12
Cool :)
Avatar billede powernodes Nybegynder
06. oktober 2004 - 11:10 #13
gi mig 30 point eller sådan noget og behold resten selv.
Avatar billede donkazz Nybegynder
06. oktober 2004 - 12:38 #14
Lige et sidste spørgsmål.. Det kan være du også ved det.
Kan man bruge samme kommando, eller en anden, til at hente en liste over hvilke mapper der ligger under f.eks. "pics".

Sådan så at den f.eks. listede op sådan her:
10.01.2004-01
10.02.2004-01
10.02.2004-02
Hvis det var de underfoldere der lå i "pics".

Og kan man f.eks. i hver underfolder evt. ligge en tekstfil hvor der bare står "Indflytterfest d. 1 oktober" og så få ASP siden til at hente den tekststreng ud?
Så slipper jeg nemlig for at oprette hver folder med beskrivelse i database og alt muligt, så kan jeg jo bare uploade en ny billedfolder hver gang jeg har taget en spandfuld billeder.
Avatar billede powernodes Nybegynder
06. oktober 2004 - 12:53 #15
Ja da, ala:

Set subFolders = folder.SubFolders 'du har defineret "folder" allerede

For Each folderObject in SubFolders
Response.Write folderObject.Name & "<br>"
Next

Set subFolders = Nothing
Avatar billede powernodes Nybegynder
06. oktober 2004 - 12:54 #16
Og det nemmeste ville da være blot at kalde en folder: "Indflytterfest d. 1 oktober"
Avatar billede donkazz Nybegynder
06. oktober 2004 - 23:36 #17
Super! Tak for hjælpen! :-D

Good point til sidst dér... den havde jeg ikke tænkt på .. ;)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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