Oprettet tir. d. 05. oktober 2004 kl. 13:17:38

donkazz
donkazz (11.670 point. Point ude: 1.395)

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?

Skrevet tir. d. 05. oktober 2004 kl. 13:38:28| #1

powernodes
powernodes (15.678 point)
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
%>

Skrevet tir. d. 05. oktober 2004 kl. 18:28:08| #2

donkazz
donkazz (11.670 point)
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..?

Skrevet tir. d. 05. oktober 2004 kl. 23:17:57| #3

donkazz
donkazz (11.670 point)
hahahaha... sløvt.... jeg havde glemt at putte billederne ind i folderen.. ja ja.. det er .. hvad.. onsdag?

Skrevet ons. d. 06. oktober 2004 kl. 01:13:01| #4

donkazz
donkazz (11.670 point)
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?

Skrevet ons. d. 06. oktober 2004 kl. 08:32:00| #5

powernodes
powernodes (15.678 point)
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.

Skrevet ons. d. 06. oktober 2004 kl. 10:27:01| #6

donkazz
donkazz (11.670 point)
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...?

Skrevet ons. d. 06. oktober 2004 kl. 10:35:38| #7

powernodes
powernodes (15.678 point)
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.

Skrevet ons. d. 06. oktober 2004 kl. 10:36:10| #8

powernodes
powernodes (15.678 point)
Rettelse:
Set folder = fso.GetFolder("D:\\domains\\pimpin.dk\\www\\475\\pics\\01.10.2004-01\\")

Skrevet ons. d. 06. oktober 2004 kl. 10:59:42| #9

donkazz
donkazz (11.670 point)
Nu har jeg prøvet at gøre som du siger:
http://www.pimpin.dk/ (...)

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

Skrevet ons. d. 06. oktober 2004 kl. 11:07:10| #10

donkazz
donkazz (11.670 point)
Sååå virker den...
Prøv at klik på http://www.pimpin.dk/ (...)

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
%>

Skrevet ons. d. 06. oktober 2004 kl. 11:07:51| #11

donkazz
donkazz (11.670 point)
Takker for hjælpen.. Hvis du vil ha dine point kan du jo lige lave et svar. :)

Skrevet ons. d. 06. oktober 2004 kl. 11:08:58| #12


Skrevet ons. d. 06. oktober 2004 kl. 11:10:29| #13

powernodes
powernodes (15.678 point)
gi mig 30 point eller sådan noget og behold resten selv.

Skrevet ons. d. 06. oktober 2004 kl. 12:38:36| #14

donkazz
donkazz (11.670 point)
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.

Skrevet ons. d. 06. oktober 2004 kl. 12:53:15| #15

powernodes
powernodes (15.678 point)
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

Skrevet ons. d. 06. oktober 2004 kl. 12:54:29| #16

powernodes
powernodes (15.678 point)
Og det nemmeste ville da være blot at kalde en folder: "Indflytterfest d. 1 oktober"

Skrevet ons. d. 06. oktober 2004 kl. 23:36:26| #17

donkazz
donkazz (11.670 point)
Super! Tak for hjælpen! :-D

Good point til sidst dér... den havde jeg ikke tænkt på .. ;)

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

Simpel test af asp-kode

Oprettet den 25. maj 2012 kl. 10.07
jtc giver 200 point for svar | Giv et svar »

Mailhandler opsætning

Oprettet den 5. april 2012 kl. 17.29
Kb1978 giver 200 point for svar | Giv et svar »

Konventer PHP til ASP

Oprettet den 22. marts 2012 kl. 21.49
jojossdk giver 200 point for svar | Giv et svar »



   




Tips & Tricks fra PC World

Teaser billede

Læserne: Her er vores værste it-indkøb

Det er ikke al it-udstyr, som er det rene guld. Her er nogle af læsernes skrækhistorier.


Anmeldelser fra PC World

Teaser billede

Test: Mobil med Ferrari-design - og en Trabant-motor

Motorola har begået endnu en smartphone med lækkert design og potentiale til at være blandt de bedste. Men den når ikke i mål. Se her hvorfor.


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Sådan siger du farvel til Facebook

Læs her, hvordan du dropper Facebook og i stedet anvender nogle brugervenlige alternativer, så du stadig kan være social på nettet.


Nyheder fra Computerworld

Teaser billede

Galleri: De fedeste håndholdte gennem 40 år

Her har du de mest banebrydende håndholdte computere gennem alle tider.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger