Jag har en sida där jag skulle ha paging som navigering på sidan. Det jag har problem med är att när scriptet laddas så går det på första sidan för att då är If Request.Querystring("Category") laddat och sidan hittar artiklarna i databsen. Men tar jag sedan nästa sida så visas det bara en blank sida. Jag tror att sidan har tappat kontakten med If Request.Querystring("Category") som väljs från en annan meny, men jag är inte säker. ibland skriver du category och ibland Category. Testa att göra att det bara är gement (små bokstäver) om det fungerar bättre då. Nej det hjälpte inte, Jag skrev problem i paging koden
hoppas ni fattar vad jag försöker säga, här kommer koden.
<code>
Dim a, i, sql, IntSida, IntAntal, cat
' ^^ Kollar vilken sida som skall visas, om tomt visas sida 1 : ^^
IntSida = Trim(Request.QueryString("Sida"))
If IntSida = "" Then
IntSida = 1
Else
IntSida = Cint(IntSida) ' ^^ Gör om det till ett tal ^^
End If
If Request.Querystring("Category")<>"" THEN
Rs.Open "SELECT * FROM shItems WHERE category = " & Request.QueryString("category") & " ORDER BY [title]"
'^^ Om tabellen är tom : ^^
If RS.EOF = True Then
Response.Write("<font color=""red"">Förnärvarande finns det inget i denna kategori, <br>alternativt är varorna slutsållda!</font>")
Else
' ^^ Bestämmer hur många inlägg det ska vara per sida : ^^
RS.PageSize = 10
' ^^ Visar önskad sida : ^^
RS.AbsolutePage = IntSida
End If
' ^^ Visar inläggen tills antalet per sida uppfylls eller inläggen tar slut : ^^
Do until RS.EOF Or IntAntal >= RS.PageSize
' ^^ Räknare : ^^
IntAntal = IntAntal + 1
%>
<table valign="top" border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td width="100%"><font size="2" color="green"><%=Rs.Fields("title").value%></font>
<table border="0" cellpadding="0" cellspacing="0" align ="left" rowspan="2" bgcolor="#F9F8E3" style="border-collapse: collapse" bordercolor="#111111" height="74">
<% If Rs.Fields("smallImage")<>"" THEN %>
<td width="100" height="74" align="left" rowspan="4">">
" ></td>
<td colspan="2" width="295" color="229507" height="20"><%=Left (Rs.Fields("description").Value,30)%>...</td></tr>
<tr><td colspan="2" width="295" height="16"></td>
</tr><tr>
<td width="102"><font size="2"> Pris: <%= Rs.Fields("price").Value %>kr</font></td>
<td width="212"><font size="2">
<%
if Rs.Fields("antal").value < 1 then
response.write "<font color=""red""> Slutsåld</font>"
Else if Rs.Fields("antal").value < 10 then
response.write "<font color=""red"">Begränsat antal</font>"
end if
end if%>
</font></td></tr>
<tr><td width="102" height="19"><p align="center">">
Info</td>
<td width="193">" target="shBasket">Lägg i kundvagnen
</td></tr>
</table> <tr><td colespan="2"><br><hr></td></tr>
<% End If
Rs.MoveNext
loop
' ^^ Visa sidlänkar : ^^
If RS.PageCount > 1 Then ' ^^ Kollar så det finns fler sidor ^^
For I = 1 To RS.PageCount ' ^^ Startar en loop som ska fixa alla sidnummer ^^
If I <> IntSida Then ' ^^ Kollar så att vi ej länkar aktuellt sidnummer ^^
Response.Write("" & I & " ")
Else ' ^^ Om det är sidan som är aktiv, gör ingen länk.
Response.Write(I & "")
End If
Next
End If
RS.Close
Conn.Close
</code>
Om det är någon hjälp så anropar jag ovanstående kod med följande.
<code>" & UCase( Rs.Fields("name").Value ) & "</code>
mvh JockeSv: problem i paging koden
Sv:problem i paging koden
<code>IntSida = Trim(Request.QueryString("Sida"))
response.write "kategori " & Request.Querystring("category") <-- Denna skrev jag till
</code>
På första sidan skriver den ut vilken kategori det är i, men när jag tryckt på nästa sida så står det bara kategori, inte vilken. Hur sparar man den informationen så att när den börjar loopa igenom igen till nästa sida så kommer den i håg vilken kategori det var. Nämnas bör kanske att kategorierna utgörs utav en siffra, om det spelar någon roll.