Hm!
Ja vad skulle man göra utan Er nämligen PAGIN problem.
Den här koden funkar inte som jag vill, kan inte bläddra mellan sidorna Ex 1,2,3,4 osv.
Det är länkarna i nästa och föregående som jag inte kan fixa.
Kod:
<%
select case request("lan")
case "lan1"
response.write lan1
case "lan2"
response.write lan2
case "lan3"
response.write lan3
case "lan4"
response.write lan4
case "lan5"
response.write lan5
case "lan6"
response.write lan6
case "lan7"
response.write lan7
case "lan8"
response.write lan8
case "lan9"
response.write lan9
case "lan10"
response.write lan10
case "lan11"
response.write lan11
case "lan12"
response.write lan12
case "lan13"
response.write lan13
case "lan14"
response.write lan14
case "lan15"
response.write lan15
case "lan16"
response.write lan16
case "lan17"
response.write lan17
case "lan18"
response.write lan18
case "lan19"
response.write lan19
case "lan20"
response.write lan20
case "lan21"
response.write lan21
case "lan22"
response.write lan22
case "lan23"
response.write lan23
case "lan24"
response.write lan24
end select
Function EditDatum(datum)
Ar = Year(datum)
Manad = Month(datum)
Dag = Day(datum)
EditDatum = Year(datum) & "-" & Right("0" & Month(datum), 2) & "-" & Right("0" & Day(datum), 2)
End Function
Dim connect, query, senaste, datecreated,typ, sCode, sColor,lan
sCode = "dmvlmv[bg=Khaki]sdvsd"
Dim objRegExp, m
Set objRegExp = New RegExp
objRegExp.Global = True
objRegExp.IgnoreCase = True
objRegExp.Pattern = "\[bg\=[^\]]*\]"
Set m = objRegExp.Execute(sCode)
Set objRegExp = Nothing
If m.Count Then
sColor = Mid(m.Item(0), 5, Len(m.Item(0)) - 5)
End If
Set m = Nothing
'## -- hur många inlägg ska visas per sida --
intPageSize = 10
'## -- vilken sida ska visas --
intPage = Request.QueryString("page")
'## -- om ingen querystring med sidvärde hittas, visa då första sidan --
If intPage = "" Then intPage = 1
Function HE(str)
If Len(Trim(str & "")) = 0 Then Exit Function
HE = Server.HTMLEncode(str)
End Function
query = "1"
If (Request.QueryString("lan") <> "") Then
query = Request.QueryString("lan")
End If
set connect = server.createobject("ADODB.connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/annonser.mdb") & ";pwd=;"
Set senaste = Server.CreateObject("ADODB.Recordset")
query = "SELECT * FROM items WHERE lan LIKE '%" + Replace(query, "'", "''") + "' ORDER BY dateCreated DESC"
'## -- hur många poster ska visas per sida --
senaste.PageSize = intPageSize
'## -- öppna och hämta alla records --
senaste.Open query, Connect, 1, 3
If senaste.EOF Then
Response.Write "<br>Det finns inga inlägg.</br>"
Else
'## -- vilken sida i recordset uppdelningen ska visas --
senaste.AbsolutePage = intPage
'## -- hur många sidor finns i recordset uppdelningen --
intTotalPages = senaste.PageCount
'## -- lista alla inlägg som finns i db --
Do Until senaste.EOF or intRecordCount >= intPageSize
intRecordCount = intRecordCount + 1
Response.Write "<table width='750' bordercolor='#99FF66' align='center' cellpadding='2' cellspacing='0' > "
if senaste("markerad") = "Ja" then
Response.Write ("<td width='5%'><tr bgcolor=""" & sColor & """></td>")
else
Response.Write "<td width='5%'><tr></td>"
end if
if Trim(senaste("fileName")) = "" then
Response.Write "<td width='5%'> "
else
Response.Write "<td width='5%'><img src=""bilder/" & senaste("fileName") & """ height='12' width='12' ></td>"
End if
response.write "<td width='26%'><font size='1'><a href=""detail.asp?item=" & senaste("id") & """>" & senaste("item")&"</a>"
response.write "<td width='12%'><font size='1'>"
response.write eval(senaste("category"))
response.write "<td width='13%'><font size='1'>" & senaste("typ") & " "
response.write "<td width='18%'><font size='1'>" & EditDatum (senaste("datecreated")) & ""
response.write "<td width='16%'><font size='1'>" & senaste("stad") & "</td>"
response.write "<td width='10%'><font size='1' color=#FF0000></font>" & senaste("price") & " Kr </font></td></tr>"
senaste.MoveNext
Loop
End If
Response.Write "<table align='center' width='750' cellpadding='0' cellspacing='0'><tr><td bgcolor='#E6E7B6'>"
'## -- visa sidnavigeringen --
'## -- intPage = vilken sida som ska visas --
'## -- intTotalPages = hur många sidor som recordsetet är uppdelat i --
Call PageNavigation(intPage, intTotalPages)
'## -- skapa sid-navigering --
Sub PageNavigation(ByVal WichPage, ByVal HowManyPages)
Dim strScriptName
'## -- vilken sida ska navigeringen länka till --
strScriptName = Request.ServerVariables("SCRIPT_NAME")
'## -- visa föregående, länkat eller olänkat beroende på vilken sida som visas --
If CInt(WichPage) > 1 Then
Response.Write "<A href='" & strScriptName & "?" &_
"page=" & WichPage - 1 & "'><< Föregående</A> "
Else
Response.Write "<< Föregående "
End If
'## -- lista ut alla sidnummer --
For I = 1 To HowManyPages
If CInt(WichPage) <> I Then
Response.Write "<A href='" & strScriptName & "?"& _
"page=" & I & "'>" & I & "</A> "
Else
Response.Write "[ <B>" & I & "</B> ]"
End If
Next
'## -- visa Nästa, länkad eller olänkad beroende på vilken sida som visas --
If CInt(WichPage) < CInt(HowManyPages) Then
Response.Write "<A href='" & strScriptName & "?" &_
"page=" & WichPage + 1 & "'>Nästa >></A>"
Else
Response.Write "Nästa >>"
End If
End Sub
Response.Write "</td></tr></table>"
'## -- clean up --
senaste.Close
Set senaste= Nothing
Connect.Close
Set Connect= Nothing
%>
/ Ivar
Hello!
Ändrade lite i koden men det funkar inte har Ni något förslag?
'## -- visa föregående, länkat eller olänkat beroende på vilken sida som visas --
If CInt(WichPage) > 1 Then
Response.Write "<A href='" & strScriptName & "?" &Request.QueryString&_
"page=" & WichPage - 1 & "'><< Föregående</A> "
Else
Response.Write "<< Föregående "
End If
'## -- lista ut alla sidnummer --
For I = 1 To HowManyPages
If CInt(WichPage) <> I Then
Response.Write "<A href='" & strScriptName & "?"&Request.QueryString& _
"page=" & I & "'>" & I & "</A> "
Else
Response.Write "[ <B>" & I & "</B> ]"
End If
Next
'## -- visa Nästa, länkad eller olänkad beroende på vilken sida som visas --
If CInt(WichPage) < CInt(HowManyPages) Then
Response.Write "<A href='" & strScriptName & "?" &Request.QueryString&_
"page=" & WichPage + 1 & "'>Nästa >></A>"
Else
Response.Write "Nästa >>"
End If
/Ivar
Orkade inte läsa genom din kod men den här använder och har jag själv skrivit så den vet jag fungerar:
<%
Public Sub Navigator(TotalPosts, CurrentPage, PageSize)
Dim Pages
Pages = Int(TotalPosts) / Int(PageSize): If Pages / Int(Pages) > 1 Then Pages = Int(Pages) + 1
If Pages > 0 Then
Dim i
With Response
.Write "<tr><td><a href = '?page=1'><<<</a> "
If CurrentPage > 1 Then .Write "<a href = '?page="&(CurrentPage - 1)&"'><<</a>" Else .Write "<< "
.Write "</td><td align = 'center'>"
For i = 1 To Pages
If Int(CurrentPage) = i Then .Write i & " " Else .Write "<a href = '?page="&i&"'>" & i & "</a> "
Next
.Write "</td><td align = 'right'>"
If Int(CurrentPage) < Pages Then .Write " <a href = '?page="&(CurrentPage + 1)&"'>>></a>" Else .Write " >>"
.Write " <a href = '?page="&Pages&"'>>>></td></tr>"
End With
End If
End Sub
%>
Ok nu har jag gjort så här men får fel mes.
• Feltyp:
Microsoft VBScript runtime (0x800A000B)
Division by zero
/stf/category2.asp, line 178
<%
select case request("lan")
case "lan1"
response.write lan1
case "lan2"
response.write lan2
case "lan3"
response.write lan3
case "lan4"
response.write lan4
case "lan5"
response.write lan5
case "lan6"
response.write lan6
case "lan7"
response.write lan7
case "lan8"
response.write lan8
case "lan9"
response.write lan9
case "lan10"
response.write lan10
case "lan11"
response.write lan11
case "lan12"
response.write lan12
case "lan13"
response.write lan13
case "lan14"
response.write lan14
case "lan15"
response.write lan15
case "lan16"
response.write lan16
case "lan17"
response.write lan17
case "lan18"
response.write lan18
case "lan19"
response.write lan19
case "lan20"
response.write lan20
case "lan21"
response.write lan21
case "lan22"
response.write lan22
case "lan23"
response.write lan23
case "lan24"
response.write lan24
end select
Function EditDatum(datum)
Ar = Year(datum)
Manad = Month(datum)
Dag = Day(datum)
EditDatum = Year(datum) & "-" & Right("0" & Month(datum), 2) & "-" & Right("0" & Day(datum), 2)
End Function
Dim connect, query, senaste, datecreated,typ, sCode, sColor,lan
sCode = "dmvlmv[bg=Khaki]sdvsd"
Dim objRegExp, m
Set objRegExp = New RegExp
objRegExp.Global = True
objRegExp.IgnoreCase = True
objRegExp.Pattern = "\[bg\=[^\]]*\]"
Set m = objRegExp.Execute(sCode)
Set objRegExp = Nothing
If m.Count Then
sColor = Mid(m.Item(0), 5, Len(m.Item(0)) - 5)
End If
Set m = Nothing
'## -- hur många inlägg ska visas per sida --
PageSize = 10
'## -- vilken sida ska visas --
Page = Request.QueryString("Page")
'## -- om ingen querystring med sidvärde hittas, visa då första sidan --
If Page = "" Then Page = 1
Function HE(str)
If Len(Trim(str & "")) = 0 Then Exit Function
HE = Server.HTMLEncode(str)
End Function
query = "1"
If (Request.QueryString("lan") <> "") Then
query = Request.QueryString("lan")
End If
set connect = server.createobject("ADODB.connection")
Connect.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("db/annonser.mdb") & ";pwd=;"
Set senaste = Server.CreateObject("ADODB.Recordset")
query = "SELECT * FROM items WHERE lan LIKE '%" + Replace(query, "'", "''") + "' ORDER BY dateCreated DESC"
'## -- hur många poster ska visas per sida --
CurrentPage= senaste.PageSize
'## -- öppna och hämta alla records --
senaste.Open query, Connect, 1, 3
If senaste.EOF Then
Response.Write "<br>Det finns inga inlägg.</br>"
Else
'## -- vilken sida i recordset uppdelningen ska visas --
CurrentPage= senaste.AbsolutePage
'## -- hur många sidor finns i recordset uppdelningen --
TotalPosts = senaste.PageCount
'## -- lista alla inlägg som finns i db --
Do Until senaste.EOF or intRecordCount >= PageSize
intRecordCount = intRecordCount + 1
Response.Write "<table width='750' bordercolor='#99FF66' align='center' cellpadding='2' cellspacing='0' > "
if senaste("markerad") = "Ja" then
Response.Write ("<td width='5%'><tr bgcolor=""" & sColor & """></td>")
else
Response.Write "<td width='5%'><tr></td>"
end if
if Trim(senaste("fileName")) = "" then
Response.Write "<td width='5%'> "
else
Response.Write "<td width='5%'><img src=""bilder/" & senaste("fileName") & """ height='12' width='12' ></td>"
End if
response.write "<td width='26%'><font size='1'><a href=""detail.asp?item=" & senaste("id") & """>" & senaste("item")&"</a>"
response.write "<td width='12%'><font size='1'>"
response.write eval(senaste("category"))
response.write "<td width='13%'><font size='1'>" & senaste("typ") & " "
response.write "<td width='18%'><font size='1'>" & EditDatum (senaste("datecreated")) & ""
response.write "<td width='16%'><font size='1'>" & senaste("stad") & "</td>"
response.write "<td width='10%'><font size='1' color=#FF0000></font>" & senaste("price") & " Kr </font></td></tr>"
senaste.MoveNext
Loop
End If
Response.Write "<table align='center' width='750' cellpadding='0' cellspacing='0'><tr><td bgcolor='#E6E7B6'>"
'## -- visa sidnavigeringen --
'## -- intPage = vilken sida som ska visas --
'## -- intTotalPages = hur många sidor som recordsetet är uppdelat i --
Call Navigator(TotalPosts, CurrentPage, PageSize)
'## -- skapa sid-navigering --
Public Sub Navigator(TotalPosts, CurrentPage, PageSize)
Dim Pages
line 178 [b]Pages = Int(TotalPosts) / Int(PageSize): If Pages / Int(Page) > 1 Then Pages = Int(Page) + 1
If Pages > 0 Then[/b]
Dim i
With Response
.Write "<tr><td><a href = '?page=1'><<<</a> "
If CurrentPage > 1 Then .Write "<a href = '?page="&(CurrentPage - 1)&"'><<</a>" Else .Write "<< "
.Write "</td><td align = 'center'>"
For i = 1 To Pages
If Int(CurrentPage) = i Then .Write i & " " Else .Write "<a href = '?page="&i&"'>" & i & "</a> "
Next
.Write "</td><td align = 'right'>"
If Int(CurrentPage) < Pages Then .Write " <a href = '?page="&(CurrentPage + 1)&"'>>></a>" Else .Write " >>"
.Write " <a href = '?page="&Pages&"'>>>></td></tr>"
End With
End If
End Sub
Response.Write "</td></tr></table>"
'## -- clean up --
senaste.Close
Set senaste= Nothing
Connect.Close
Set Connect= Nothing
%>