Avatar billede dj-hupi Nybegynder
23. februar 2005 - 12:12 Der er 1 kommentar og
1 løsning

obj-Mapper-Galleri

Jeg har hentet et script som endelig er rimlig fint, jeg vil bare gerne have lavet det lidt om ...

Det er meningen der skal være en Rullemenu hvor man kan vælge hvilken mapper den skal kigge efter billeder i !

Nogle som kan hjælper ?

Scriptet::

<%
'------------------------------------------------
'henter info om siden
'------------------------------------------------
page = trim(Request.QueryString("page"))
start = trim(Request.QueryString("start"))

'------------------------------------------------
'Åbner Filsystem
'------------------------------------------------
strPathInfo = Request.ServerVariables("PATH_INFO")
strPhysicalPath = Server.MapPath(strPathInfo)

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(strPhysicalPath)
Set objFolder = objFile.ParentFolder
Set objFolderContents = objFolder.Files

'------------------------------------------------
'grund variabler
'------------------------------------------------
row_count = 0
row = 1
max_row = 3
count = 1
If NOT start <> "" then
Start = 1
End If
%>

<p align=center>

<%
'------------------------------------------------
'Info variabler
'------------------------------------------------

info_page = 0
info_page_count = 0
info_Count = 0

'------------------------------------------------
'Info Script, udregner og udskriver info til siden
'------------------------------------------------
If page <> "" then
response.write "side <a href='index.asp'>1</a> "
else
Response.write "side 1 "
End If

For Each objFileItem in objFolderContents
info_Count = info_Count + 1
info_page = info_page + 1
if info_page = 9 then
info_page_count = info_page_count + 1
info_page = 0
End If
If info_page = 0 then
If trim(info_page_count + 1) = trim(page) then
response.write info_page_count + 1 & " "
Else
response.write "<a href='index.asp?start=" & info_count & "&page=" & info_page_count + 1 & "'>" & info_page_count + 1 & "<a> "
End If
End If
Next
Response.write "<br>Der er ialt <b>" & (info_Count) & "</b> billeder"
if (info_page_count) * 9 = info_count then
Response.write " på <b>" & (info_page_count) & "</b> sider<br>"
Else
Response.write " på <b>" & (info_page_count) + 1 & "</b> sider<br>"
End If
%>
<div align="center">
<table border="0" cellspacing="3" cellpadding="3">
  <tr>

<%
For Each objFileItem in objFolderContents

If objFileItem.Name = "index.asp" then
Else
 
  If CLng(count) < CLng(start) then
  count = count + 1
  Else

  If CLng(row) => CLng(max_row) And row_count = 3 then
  Else
 
 
 
 
  If row_count > 2 then
    response.write "<tr>"
    row_count = 0
    row = row + 1
  End If

 
  Response.write " <td><a href='"
  Response.Write(objFileItem.Name)
  Response.write "'><img border=0 src='" & (objFileItem.Name) & "' alt='" & (objFileItem.Name) & "' width=239 height=180></a>"
  row_count = row_count + 1   
  count = count + 1
End If
End If
End If
Next
%>
<!-- Made by Koldy 2001 - www.koldy.dk - thomas@koldy.dk -->
Avatar billede eagleeye Praktikant
23. februar 2005 - 22:26 #1
Ja jeg kan hjælpe. I bund og grund er det at tilføje noget kode som kan list folderne i en drop-down menu ud fra den valgte folder og du kan tilføje dette kode i bunden af det kode du har vist:

response.write "<br><br><center>Vælg folder: <form method=""get"">"
response.write "<select name=""subfolder"" onchange=""if (this.selectedIndex>0) {this.form.submit();}"">"
response.write "<option value="""" selected>Vælg folder</option>"
Set objFolders = objFolder.SubFolders
For Each folder in objFolders
  response.write "<option value=""" & (subfolder&folder.Name) & """>" & folder.Name & "</option>"
next
response.write "</select></form></center>"



Problemet er at de billeder som skal vises i subfoldere skal så kende til hvil relativ sti det er i fra root folderen sådan den viser billedet rigtig. Det er også til at lave og du kan lave din kode som vil er vist i min næste kommentar.

Er det du har vist hele koden det er som om der mangler en </table> og </div> efter den sidste Next ?
Avatar billede eagleeye Praktikant
23. februar 2005 - 22:27 #2
<%
'------------------------------------------------
'henter info om siden
'------------------------------------------------
page = trim(Request.QueryString("page"))
start = trim(Request.QueryString("start"))
subfolder = trim(Request.QueryString("subfolder"))

'------------------------------------------------
'Åbner Filsystem
'------------------------------------------------
strPathInfo = Request.ServerVariables("PATH_INFO")

'Tilføje evt subfolder
if inStrRev(strPathInfo,"/") > 0 then
  strPathInfo = left(strPathInfo,inStrRev(strPathInfo,"/"))
else
strPathInfo = "."
end if
if left(subFolder,1)="/" then subFolder = mid(subFolder,2)
if right(subFolder,1)<>"/" and len(subFolder)>0 then subFolder=subFolder&"/" 

strPathInfo=strPathInfo&subFolder
relativFromRoot=strPathInfo
strPhysicalPath = Server.MapPath(strPathInfo)

Set objFSO = CreateObject("Scripting.FileSystemObject")
'Set objFile = objFSO.GetFile(strPhysicalPath)
'Set objFolder = objFile.ParentFolder
Set objFolder = objFSO.GetFolder(strPhysicalPath)
Set objFolderContents = objFolder.Files

'------------------------------------------------
'grund variabler
'------------------------------------------------
row_count = 0
row = 1
max_row = 3
count = 1
If NOT start <> "" then
Start = 1
End If
%>

<p align=center>

<%
'------------------------------------------------
'Info variabler
'------------------------------------------------

info_page = 0
info_page_count = 0
info_Count = 0

'------------------------------------------------
'Info Script, udregner og udskriver info til siden
'------------------------------------------------
If page <> "" then
response.write "side <a href='index.asp?subfolder="&subfolder&"'>1</a> "
else
Response.write "side 1 "
End If

For Each objFileItem in objFolderContents
info_Count = info_Count + 1
info_page = info_page + 1
if info_page = 9 then
info_page_count = info_page_count + 1
info_page = 0
End If
If info_page = 0 then
If trim(info_page_count + 1) = trim(page) then
response.write info_page_count + 1 & " "
Else
response.write "<a href='index.asp?subfolder=" & Server.URLEncode(subFolder) & "&start=" & info_count & "&page=" & info_page_count + 1 & "'>" & info_page_count + 1 & "<a> "
End If
End If
Next
Response.write "<br>Der er ialt <b>" & (info_Count) & "</b> billeder"
if (info_page_count) * 9 = info_count then
Response.write " på <b>" & (info_page_count) & "</b> sider<br>"
Else
Response.write " på <b>" & (info_page_count) + 1 & "</b> sider<br>"
End If
%>
<div align="center">
<table border="0" cellspacing="3" cellpadding="3">
  <tr>

<%
For Each objFileItem in objFolderContents

If objFileItem.Name = "index.asp" then
Else

  If CLng(count) < CLng(start) then
  count = count + 1
  Else

  If CLng(row) => CLng(max_row) And row_count = 3 then
  Else




  If row_count > 2 then
    response.write "<tr>"
    row_count = 0
    row = row + 1
  End If


  Response.write " <td><a href='"
  Response.Write(relativFromRoot & objFileItem.Name)
  Response.write "'><img border=0 src='" & relativFromRoot & (objFileItem.Name) & "' alt='" & (objFileItem.Name) & "' width=239 height=180></a>"
  row_count = row_count + 1 
  count = count + 1
End If
End If
End If
Next



response.write "<br><br><center>Vælg folder: <form method=""get"">"
response.write "<select name=""subfolder"" onchange=""if (this.selectedIndex>0) {this.form.submit();}"">"
response.write "<option value="""" selected>Vælg folder</option>"
Set objFolders = objFolder.SubFolders
For Each folder in objFolders
  response.write "<option value=""" & (subfolder&folder.Name) & """>" & folder.Name & "</option>"
next
response.write "</select></form></center>"

%>
<!-- Made by Koldy 2001 - www.koldy.dk - thomas@koldy.dk -->
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