position i array + funktion
Jeg har et problem med et billedsystemKoden er delvis fra eksperten og delvis min egen.
mit problem er min tilbageknap.
Siden med billeder er delt op så den viser 9 billeder pr side.
Klikker jeg på et billede får jeg det vist på samme side i stedet for oversigten (en if else statement) men nu jeg også en forrige og næste billede når jeg ser det store billede. Så jeg kan ikke bruge en history.back funktion.
Men f.eks. hvis jeg f.eks klikker på et billede fra oversigten på side 1 og bruger næste linket på det store billede og klikker frem til et billede der er på side 2 og vil tilbage til oversigten skal jeg bruge en funktion der sender mig til side 2
Lød det kryptisk ? - lidt svært at forklare
måske lettere med koden, så den kommer her. Problemet er på linie 182 - filen hedder default.asp :
<html>
<head>
<title></title>
<style type="text/css">
.TN
{
border: 1px solid #000000;
}
.LP
{
border: 1px solid #000000;
}
a:link
{
font-family: verdana;
font-size: 8pt;
color: #000000;
text-decoration: none;
}
a:visited
{
font-family: verdana;
font-size: 8pt;
color: #000000;
text-decoration: none;
}
a:active
{
font-family: verdana;
font-size: 8pt;
color: #000000;
text-decoration: none;
}
a:hover
{
font-family: verdana;
font-size: 8pt;
color: #FFFFFF;
text-decoration: none;
}
.LI
{
color: #000000;
Border: 1px solid #000000;
}
</style>
</head>
<body bgcolor="A0B3C8">
<div align="center">
<table width="100%" border="0">
<%
CurFile = "default.asp"
billedeSti = "./01-Renovering/"
antalBillederPrSide = 9
antalBillederPrRekke = 3
if Request.QueryString("billede") = "" then
start = request.querystring("start")
if start = "" then start = 0
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(server.mappath(billedeSti))
Set fc = f.Files
For Each billed in fc
arrayBuild = arrayBuild & billed.name & "|"
next
arrayBuild = left(arrayBuild, (len(arrayBuild) - 1))
myArray = Split(arrayBuild, "|")
Antalsider = int(ubound(myarray) / antalBillederPrSide)
antal = 0
for i = start to (start + antalBillederPrSide-1)
if not i > ubound(myarray) then
if antal = 0 then Response.Write "<TR>"
%>
<td width="<%=Int(antalBillederPrRekke/100)%>"><p align="center">
<a href="<%=CurFile%>?sti=<%=billedeSti%>&billede=<%=myArray(i)%>">
<img class="TN" SRC="<%=billedeSti%>/<%=myArray(i)%>" border="0" color="black" WIDTH="116" HEIGHT="82">
</a></td>
<%
else
nesteside = 1
end if
antal = antal + 1
if antal = antalBillederPrRekke then
Response.Write "</TR>"
antal = 0
end if
next
if antal > 0 then Response.Write "</TR>"
%>
</table>
<center>
<%
if start <> 0 then
response.write "<a href=" & (CurFile) & "?start=" & (start - antalBillederPrSide) & ">Forrige</a>"
response.write(" ")
end if
'Determine if there are multiple pages and if so, display page numbers.
If Antalsider > 1 Then
Response.Write BillederPrRekke
For x = 1 to Antalsider + 1
z = (x-1)*AntalBillederPrSide
'Response.Write "start:" & " " & start & " " & "z=" & z & " "
If z = cint(start) Then
Response.Write x & " "
Else
Response.Write "<a href=" & (CurFile) & "?start=" & z & ">" & x & "</a> "
End If
Next
End If
if nesteside <> 1 then
response.write "<a href=" & (CurFile) & "?start=" & (start + antalBillederPrSide) & ">Næste</a>"
end if
%>
</center>
<%
else
'Vis billedet
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(server.mappath(billedeSti))
Set fc = f.Files
For Each billed in fc
arrayBuild = arrayBuild & billed.name & "|"
next
arrayBuild = left(arrayBuild, (len(arrayBuild) - 1))
myArray = Split(arrayBuild, "|")
minpos=lbound(MyArray)
maxpos=lbound(MyArray)
for i=lbound(MyArray)+1 to ubound(MyArray)
if MyArray(i) > MyArray(maxpos) then
maxpos=i
end if
if MyArray(i)<MyArray(minpos) then
minpos=i
end if
next
min=MyArray(minpos)
max=MyArray(maxpos)
%>
<tr><td align="center">
<a border="0" class="LP" href="java script:history.back();"><img SRC="<%=Request.QueryString("sti") & Request.Querystring("Billede")%>" border="0" class="LI"></a>
<p align="center">
<%
For n = 0 to UBound(MyArray)
If Request.Querystring("Billede") = MyArray(n) Then
if MyArray(n) = min Then
Else
forrige = MyArray(n-1)
Response.Write "<a href='default.asp?sti=" & Request.Querystring("sti") & "&Billede=" & forrige & "'>" & "Forrige" & "</a>" & " "
End if
'Response.Write "<a href='java script:history.back();'>Tilbage</a>"
'HER SKAL TILBAGE KNAPPEN VÆRE
'TILBAGELINKET SKAL MÅSKE HAVE EN HREF = CurFile?Start= (UBound(Myarray)/AntalBillederPrRekke -+*/ en aller anden funktion)
'Talværdi af aktuel position i array
'eks
'27/3=9
'pos = 16
'start=9 da 9 < 16 < 18
'pos = 26
'start = 18 da 18 < 26 < 27
if MyArray(n) = max Then
Else
naeste = MyArray(n+1)
Response.Write " " & "<a href='default.asp?sti=" & Request.Querystring("sti") & "&Billede=" & naeste & "'>" & "Næste" & "</a>" & " "
End if
End if
Next
%>
</p>
</td>
</tr>
</table>
<%
end if %>
</div>
</body>
</html>
