21. maj 2003 - 12:18Der er
29 kommentarer og 1 løsning
Viser liste over filer (film) som er i flere undermapper
Hej, ja så er jeg på banen igen, så sent som i går guidede Eagleeye (aka Gud :) ) mig igennem, et lignende problem som det her, I går gjorde scriptet at den viste alle billeder og previewede dem i en popup. Men det her, skulle jeg mene var lidt enklere: * jeg har en undermappe der hedder "filer/film/" * i den er der en masse mapper som indeholder film * Øverst er der en liste med link på navnene på mapperne * så under kommer der en række links til filmene i den pågældende mappe?
Nu er det ikke for at tale dig fra din idé med alle mapperne, men hvis det var mig, så ville jeg administrere det hele i en database. Dvs.
- En tabel med alle navnene på festerne, hvor hver fest har et ID. - En tabel med alle billederne, hvor hvert enkel henviser til den pågældende fests ID. - En mappe med små og en med store billeder, hvor hver fil er navngivet efter ID-nummeret i tabellen med billeder.
Det muliggør jo også, at du kan indskrive tekster og statistik til hvert billede. Blot et forslag - om ikke andet noget du kan bruge senere.
Det har jeg tænkt over men det er bare en hel del mere besværligt at skulle til at ligge dem ind i en DB.... her kan man jo bare oprette en mappe og så smide billederne eller filmene derind... :)
Du skal ikke lægge dem ind i din DB. Alle billederne lægger i samme mappe og i tabellen, henviser du til dem. Du kan jo gøre det hele automatisk med FSO, der kan oprette, omdøbe, slette, kopiere filer m.v. Jeg ville bare lige nævne det...
Jamen kan den så godt gøre det sådan at den sorterer efter at de ligger i subfolders. og at når man trykker på linket i listen så viser den kun billederne fra den gældende subfolder...?
Jeg har noget du kan prøve som er som det i går hvor man fra en udgangs folder kan bladre rundt i folderne, det er ikke så svær med FSO. Man kan også ligge filerne i en database og dele som ind i kategorier (foldere) og kun liste de filer som er tilknyttet en kategori. Dog ser jeg ikke den store fordel ved det i forbindelse med visning af filerne, da man i stedet far at gennemgå en folder så skal man gennemgå et recordset. Man skal også stadig holde styr på sub-kategorier (subfolders).
Jeg synes heller ikke det er den store fordel med at bruge DB da det gør det for besværligt, ideen er at det skal være enkelt... :) Men det du havde er det noget der gør at den viser indholdet som det andet du "hjælp" mig med :) hvor den laver en liste med subfolderne og så når man trykker på en af navnene så kommer der en liste frem med alle filerne i den gældende mappe som man kan trykke på som links (download)...
Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(strPhysicalPath)
For each Folder in objFolder.SubFolders If Left(Folder.Name,1)<>"_" Then Response.Write "<a href=""" & CurFile & "?ShowSub=" & ShowSubLink & "/" Response.Write(Replace(Folder.Name, " ", "%20")) response.write """>" Response.Write Folder.Name Response.Write "<br>" End if Next
prodoc ---> Det er jo smag og behag, hvordan man vil gøre det. Men hvis du bare skal vise billederne og intet andet, er det jo helt fint at liste dem op med FSO.
EagleEye> Mange tak for det endnu engang... Ved godt jeg ikke er for klog, men det laver igen lort... :) Jeg kunne vel ikke endnu en gang få dig til at putte det ind i den form jeg lavede til billederne også? :)
//--> </SCRIPT></font></p></td> </tr> <tr> <td width="800" height="1" colspan="3" bgcolor="#5B2900"></td> </tr> <tr> <td width="163" height="19" bgcolor="#5B2900" valign="top"> </td> <td width="485" height="12" bgcolor="#5B2900" valign="top"> </td> <td width="152" height="19" bgcolor="#5B2900" valign="top"> </td> </tr> <form name="form1" method="post" action="tjek.asp"> <tr> <td width="163" height="499" bgcolor="#5B2900" valign="top"><b><font face="Verdana" size="1" color="#FFFFFF"> <% If Session("Niveau") = 1 then Server.Execute("adminmenu.asp") End if
If Session("Niveau") = 2 then Server.Execute("brugermenu.asp") End if
If Session("Niveau") = "" then Server.Execute("menu.asp") End if %> </font></td> <td width="485" height="499" bgcolor="#5B2900" valign="top"> <h3>Vælg folder :</h3> <% sti = "./filer/film" ShowSub = sti & request("ShowSub") ShowSubLink = request("ShowSub") strPathInfo = ShowSub
strPhysicalPath = Server.MapPath(strPathInfo)
Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(strPhysicalPath)
For each Folder in objFolder.SubFolders If Left(Folder.Name,1)<>"_" Then Response.Write "<a href=""" & CurFile & "?ShowSub=" & ShowSubLink & "/" Response.Write(Replace(Folder.Name, " ", "%20")) response.write """>" Response.Write Folder.Name Response.Write "<br>" End if Next
EagleEye> Der er et par problemer, når man trykker på de links (filerne i undermapperne) så tror den at filerne ligger på roden, kan man ikke få dem til at ligge i den subfolder som man har valgt? Og så lige en lille anden ting kunne jeg ikke få dig til at bytte om på positionerne sådan at fillisten er i midten og subfolder listen er til højre (som ved billeder.asp)
* er der en måde hvor man kan skrive noget på "forsiden" af filer.asp sådan at der står noget i midten inden man trykker på nogen af subfolderne...
Det forstår jeg ikke helt? Men er der ikke en måde hvorpå man kan gøre det som ved billederne hvor den bare viser titlen som den gjorde i starten, men bare ikke billedet??
//--> </SCRIPT></font></p></td> </tr> <tr> <td width="800" height="1" colspan="3" bgcolor="#5B2900"></td> </tr> <tr> <td width="163" height="19" bgcolor="#5B2900" valign="top"> </td> <td width="485" height="12" bgcolor="#5B2900" valign="top"> </td> <td width="152" height="19" bgcolor="#5B2900" valign="top"> </td> </tr> <form name="form1" method="post" action="tjek.asp"> <tr> <td width="163" height="499" bgcolor="#5B2900" valign="top"><b><font face="Verdana" size="1" color="#FFFFFF"> <% If Session("Niveau") = 1 then Server.Execute("adminmenu.asp") End if
If Session("Niveau") = 2 then Server.Execute("brugermenu.asp") End if
If Session("Niveau") = "" then Server.Execute("menu.asp") End if %> </font></td> <td width="485" height="499" bgcolor="#5B2900" valign="top"> <table border="0" cellpadding="0" cellspacing="5"> <tr><td> <h3>Vælg folder :</h3> </td></tr> <% sti = "./filer/film/" ShowSub = sti & request("ShowSub") strPathInfo = ShowSub
strPhysicalPath = Server.MapPath(sti)
Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(strPhysicalPath)
For each Folder in objFolder.SubFolders If Left(Folder.Name,1)<>"_" Then Response.Write "<tr><td>" Response.Write "<a href=""" & CurFile & "?ShowSub=" Response.Write(Replace(Folder.Name, " ", "%20")) response.write """>" Response.Write Folder.Name ' Response.Write "<br>" Response.Write "</td></tr>" End if Next
Der er stadig nogle problemer, det virker stadig ikke med at virke med subfolders, jeg har prøvet at redigere ./filer/film til /filer/film??? og nu virker det godt nok med at den viser subfolders men så kommer filerne i den valgte subfolder (i samme liste)?
Undskyld jeg har formuleret mig forkert, Jeg vil gerne have det som på denne her fil: http://www.slyngelstuen.dk/Billeder12.asp Men hvor der i stedet for billeder er en liste med links som redirecter til filerne (med andre ord, når man trykker på linksne så downloader den filen med det navn som det link man har trykket på)
//--> </SCRIPT></font></p></td> </tr> <tr> <td width="800" height="1" colspan="3" bgcolor="#5B2900"></td> </tr> <tr> <td width="163" height="19" bgcolor="#5B2900" valign="top"> </td> <td width="485" height="12" bgcolor="#5B2900" valign="top"> </td> <td width="152" height="19" bgcolor="#5B2900" valign="top"> </td> </tr> <form name="form1" method="post" action="tjek.asp"> <tr> <td width="163" height="499" bgcolor="#5B2900" valign="top"><b><font face="Verdana" size="1" color="#FFFFFF"> <% If Session("Niveau") = 1 then Server.Execute("adminmenu.asp") End if
If Session("Niveau") = 2 then Server.Execute("brugermenu.asp") End if
If Session("Niveau") = "" then Server.Execute("menu.asp") End if %> </font></td> <td width="485" height="499" bgcolor="#5B2900" valign="top"> <h3>Vælg folder :</h3> <% sti = "./filer/film/" ShowSub = sti & request("ShowSub") strPathInfo = ShowSub
Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(strPhysicalPath)
For each Folder in objFolder.SubFolders If Left(Folder.Name,1)<>"_" Then Response.Write "<tr><td>" Response.Write "<a href=""" & CurFile & "?ShowSub=" Response.Write(Replace(Folder.Name, " ", "%20")) response.write """>" Response.Write Folder.Name ' Response.Write "<br>" Response.Write "</td></tr>" End if Next
//--> </SCRIPT></font></p></td> </tr> <tr> <td width="800" height="1" colspan="3" bgcolor="#5B2900"></td> </tr> <tr> <td width="163" height="19" bgcolor="#5B2900" valign="top"> </td> <td width="485" height="12" bgcolor="#5B2900" valign="top"> </td> <td width="152" height="19" bgcolor="#5B2900" valign="top"> </td> </tr> <form name="form1" method="post" action="tjek.asp"> <tr> <td width="163" height="499" bgcolor="#5B2900" valign="top"><b><font face="Verdana" size="1" color="#FFFFFF"> <% If Session("Niveau") = 1 then Server.Execute("adminmenu.asp") End if
If Session("Niveau") = 2 then Server.Execute("brugermenu.asp") End if
If Session("Niveau") = "" then Server.Execute("menu.asp") End if %> </font></td> <td width="485" height="499" bgcolor="#5B2900" valign="top"> <h3>Vælg folder :</h3> <% sti = "./filer/film/" ShowSub = sti & request("ShowSub") strPathInfo = ShowSub
<% Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFolder = objFSO.GetFolder(strPhysicalPath)
For each Folder in objFolder.SubFolders If Left(Folder.Name,1)<>"_" Then Response.Write "<tr><td>" Response.Write "<a href=""" & CurFile & "?ShowSub=" Response.Write(Replace(Folder.Name, " ", ",",",",",","%20")) response.write """>" Response.Write Folder.Name ' Response.Write "<br>" Response.Write "</td></tr>" End if Next
Nu virker den også, men der er stadig et par problemer... *Listen med undermapper er placeret lidt forkert *Det med at den stadig viser listen med undermapper når man har trykket på en undermapper *Det med links virker stadig ikke (den viser "rod/filnavn" og skal vise "rod/subfolder/filnavn"
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.