Hjälp med arkiv..

ASP

3 svar · 117 visningar · startad av McD

Medlem sedan mars 20002 520 inlägg
Trådstart#1

skulle vilja fixa ett arkiv som ser ut så här Arkiv:[1][2][3][4][5][>>]

(det skall visas 5 sidor därefter när man trycker på >> så väljs 6,7,8,9,10 osv...

Vide har hjälpt mig med en funktion... och koden ser ut så här...

 
<link rel=stylesheet href="../css/stilar.css" type="text/css">
<br>
<table width="679" border="0" cellspacing="0" cellpadding="0">
  <tr> 
    <td width="217" valign="middle" align="center"><img src="fiske/bilder/fluga.jpg" width="198" height="184"></td>
    <td width="462"> 
      <table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject.gif">
        <tr> 
          <td width="3">&nbsp;</td>
          <td width="673"><span class="Underrubrik">&nbsp;Fisketurer:</span></td>
          <td width="3">&nbsp;</td>
        </tr>
      </table>
      <table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
        <tr> 
          <td>&nbsp;</td>
        </tr>
      </table>
      <%
Session.LCID = 1053

Set Connect = Server.CreateObject("ADODB.Connection")
MdbFilePath =  "c:\inetpub\scripts\nyamcdz.mdb"
Connect.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"

Page_Size = 5

If Request("Page") = "" Then
  Current_Page = 1
Else
  Current_Page = CInt(Request("Page"))
End If

Set RecSet=Server.CreateObject("ADODB.RecordSet")

RecSet.CursorLocation = 3
RecSet.PageSize = Page_Size

SQL = "Select * From fisketurer ORDER BY adat DESC"

RecSet.Open SQL, Connect, 3, 1, &H0001

Page_Count = RecSet.PageCount

If 1 > Current_Page Then Current_Page = 1
If Current_Page > Page_Count Then Current_Page = Page_Count

RecSet.AbsolutePage = Current_Page

Do While RecSet.AbsolutePage = Current_Page And Not RecSet.EOF
%>
      <table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
        <tr> 
          <td width="2">&nbsp;</td>
          <td width="310"><a href="#top"><%=Recset("subject")%></a></td>
          <td width="78"><%=Recset("adat")%></td>
          <%
select case cstr(recset("fisk"))
case "1": Bildx = "fiske/bilder/2.gif"
case "3": Bildx = "fiske/bilder/3.gif"
case "2": Bildx = "fiske/bilder/1.gif"
end select
%>
          <td width="33" valign="middle" align="center"><img src="<%=Bildx%>"> 
            <div align="left"></div>
          </td>
          <%
select case cstr(recset("foto"))
case "ja" : BildY = "fiske/bilder/foto.gif"
case "nej": BildY = "bilder/subject1.gif"
end select
%>
          <td width="33" align="center" valign="middle"><img src="<%=BildY%>"> 
            <div align="left"></div>
          </td>
          <td width="6">&nbsp;</td>
        </tr>
      </table>
      <%
RecSet.MoveNext
Loop

RecSet.Close
Set RecSet = Nothing
Connect.Close
Set Connect = Nothing

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
antal = 0
Set RecSet = Server.CreateObject("ADODB.Recordset")
Addera = "SELECT * FROM fisketurer ORDER BY Id DESC"
RecSet.Open Addera, Connect, 3, 3 
Do Until RecSet.EOF 	
antal = antal + 1
RecSet.MoveNext
Loop
RecSet.Close
Connect.Close
%>
         
      <table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
        <tr>
          <td>&nbsp;</td>
        </tr>
      </table>
      
      <table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
        <tr> 
          <td width="185"align="right">&nbsp; </td>
          <td width="272"align="right"> 
<%
Function getLinks(howmanypages,currentpage)
 	if currentpage > 1 then 
 	' skriv ut länk "<<"
        end if

        If currentpage >= 3 Then
		For i = currentpage - 2 To currentpage + 2
			tmpVar = tmpVar & "<a href=""default.asp?sida1=arkivturer&"&i&""">["&i&"]</a>"
			If howmanypages = currentpage Then Exit For
		Next
        Else
		For i = 1 To howmanypages
			tmpVar = tmpVar & "<a href=""default.asp?sida1=arkivturer&"&i&""">["&i&"]</a>"
		Next
	End If
	
	getLinks = tmpVar
	
	if currentpage < howmanypages then
        ' skriv ut ">>"-länk
        end if

End Function

response.write getLinks(Current_Page, Page_Count)

%>
          </td>
          <td width="5"align="right">&nbsp;</td>
        </tr>
      </table>
      <table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
        <tr> 
          <td>&nbsp;</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<br>

detta funkar fint... MEN det blir bara [1][2][3] osv i all oändlighet...

Vad ska jag göra med detta för att få ut informationen länkarna i detta fall så som jag vill ha dem?

Mcyket tacksam för hjälp.

Medlem sedan dec. 200012 464 inlägg
#2
<link rel=stylesheet href="../css/stilar.css" type="text/css">
<br>
<table width="679" border="0" cellspacing="0" cellpadding="0">
<tr> 
<td width="217" valign="middle" align="center"><img src="fiske/bilder/fluga.jpg" width="198" height="184"></td>
<td width="462"> 
<table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject.gif">
<tr> 
<td width="3"> </td>
<td width="673"><span class="Underrubrik"> Fisketurer:</span></td>
<td width="3"> </td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
<tr> 
<td> </td>
</tr>
</table>
<%
Session.LCID = 1053
Set Connect = Server.CreateObject("ADODB.Connection")
MdbFilePath = "c:\inetpub\scripts\nyamcdz.mdb"
Connect.Open "driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"

Page_Size = 5

If Request("Page") = "" Then
Current_Page = 1
Else
Current_Page = CInt(Request("Page"))
End If

Set RecSet=Server.CreateObject("ADODB.RecordSet")

RecSet.CursorLocation = 3
RecSet.PageSize = Page_Size

SQL = "Select * From fisketurer ORDER BY adat DESC"

RecSet.Open SQL, Connect, 3, 1, &H0001

Page_Count = RecSet.PageCount

If 1 > Current_Page Then Current_Page = 1
If Current_Page > Page_Count Then Current_Page = Page_Count

RecSet.AbsolutePage = Current_Page

Do While RecSet.AbsolutePage = Current_Page And Not RecSet.EOF
%>
<table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
<tr> 
<td width="2"> </td>
<td width="310"><a href="#top"><%=Recset("subject")%></a></td>
<td width="78"><%=Recset("adat")%></td>
<%
select case cstr(recset("fisk"))
case "1": Bildx = "fiske/bilder/2.gif"
case "3": Bildx = "fiske/bilder/3.gif"
case "2": Bildx = "fiske/bilder/1.gif"
end select
%>
<td width="33" valign="middle" align="center"><img src="<%=Bildx%>"> 
<div align="left"></div>
</td>
<%
select case cstr(recset("foto"))
case "ja" : BildY = "fiske/bilder/foto.gif"
case "nej": BildY = "bilder/subject1.gif"
end select
%>
<td width="33" align="center" valign="middle"><img src="<%=BildY%>"> 
<div align="left"></div>
</td>
<td width="6"> </td>
</tr>
</table>
<%
RecSet.MoveNext
Loop

antal = recset.recordcount
page_count = (antal-1)/page_size + 1
recset.close
set recset = nothing
connect.close
set connect = nothing
%>

<table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
<tr>
<td> </td>
</tr>
</table>

<table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
<tr> 
<td width="185"align="right">  </td>
<td width="272"align="right"> 
<%

Function getLinks(howmanypages,currentpage)
dim minpage,maxpage,tmpvar
if  currentpage - 5 < 1 then
    minpage = 1
else
    minpage = 5*fix(currentpage/5) + 1
end if
if currentpage > 5 then 
   tmpVar = "<a href=""default.asp?page="&minpage-5&"""><<</a>"
end if

For i = minpage To minpage + 4

tmpVar = tmpVar & "<a href=""default.asp?page="&i&""">["&i&"]</a>"

If howmanypages = i Then Exit For
Next

if minpage + 5 < howmanypages then
   maxpage = minpage -- 5 
   tmpVar = tmpvar & "<a href=""default.asp?page="&maxpage&""">>></a>"
end if
getlinks = tmpvar

End Function
response.write getLinks(Page_count,Current_Page)

%>
</td>
<td width="5"align="right"> </td>
</tr>
</table>
<table width="100%" border="0" cellspacing="0" cellpadding="0" background="bilder/subject1.gif">
<tr> 
<td> </td>
</tr>
</table>
</td>
</tr>
</table>
<br>

En fråga, varför var detta med i href

?sida1=arkivture

Medlem sedan mars 20002 520 inlägg
#3

Vet faktiskt inte... Just detta med delade recordset är inte direkt min höjdare :D

Har det inte något med Vides funktion att göra?

Tack så mycket för hjälpen hoppas att jag får fråga dig igen om jag inte får till det ändå...

Medlem sedan mars 20002 520 inlägg
#4

Tack så hjärtligt funkade kalas! :)

259 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)