Du måste skicka med dig ett värde till nästa sida, alltså typ:
typesearch=ort
Detta får du då lägga in i själva länken som skickar till nästa sida, borde vara där skon klämmer.
Andreas
10 svar · 204 visningar · startad av Mav
Har använt mig av det som står i FAQ om atat dela upp recordset på flera sidor. INga problem förutom att när jag klickar för att gå till nästa sida så får jag hela databasen listat, alltså inte det som jag sökte på från början. Någon?
<%
Dim visainfo
mypage = Request("whichpage")
If mypage = "" then
mypage = 1
End If
mypagesize = 10
Set fritid = Server.CreateObject("ADODB.Connection")
fritid.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=c:\Frontpage Webs\Resport\dbboende\db\adressbok.mdb"
visainfo = Request.Form("inbox")
SQL = "SELECT * FROM adressbok ORDER BY Kundnamn ASC"
If Request.Form("TypeSearch") = "Kundnamn" Then
SQL = "SELECT * FROM adressbok WHERE Kundnamn = '"& visainfo &"'"
End If
If Request.Form("TypeSearch") = "Ort" Then
SQL = "SELECT * FROM adressbok WHERE Ort = '"& visainfo &"'"
End If
If Request.Form("TypeSearch") = "Kedjanamn" Then
SQL = "SELECT * FROM adressbok WHERE Kedjanamn = '"& visainfo &"'"
End If
Set rstemp = Server.Createobject("ADODB.Recordset")
rstemp.cursorlocation = 3
rstemp.cachesize = 5
rstemp.Open SQL, fritid%>
<%If rstemp.EOF then%>
Det finns inget som matchar din sökning!
<%Else%>
<%If Not rstemp.BOF Then%>
Sökresultat
<th width="215">Namn:</th>
<th width="105">Ort:</th>
</TR>
</table>
<%
rstemp.movefirst
rstemp.pagesize = mypagesize
maxcount = Cint(rstemp.pagecount)
rstemp.absolutepage = mypage
howmanyrecs = 0
howmanyfields = rstemp.fields.count -1
Do While Not RStemp.EOF AND howmanyrecs < rstemp.pagesize
counter = counter + 1
If counter mod 2 = 0 then
color = "CCCC99"
Else
color = "CCCC66"
End If%>
<A HREF=infoboende.asp?ID=<%=rstemp("ID")%>><%=rstemp("Kundnamn")%>
<%=rstemp("Ort")%>
<%rstemp.movenext
howmanyrecs = howmanyrecs + 1
Loop
rstemp.close
Set rstemp = nothing%>
<%If maxcount <> 0 then
response.write "sida " & mypage & " av " & maxcount & "<br>" & sidor:
pad = "0"
scriptname = request.Servervariables("script_name")
for counter = 1 to maxcount
If counter >= 10 then
pad = ""
End If
ref = "<a href='" & scriptname & "?whichpage=" & counter & "&pagesize=" & mypagesize & "'>" & pad & counter & "</a> "
response.write ref & " "
if counter mod 10 = 0 then
response.write "<br>"
End If
Next
End If
End If
End If
%>
------------------
//Mav
Du måste skicka med dig ett värde till nästa sida, alltså typ:
typesearch=ort
Detta får du då lägga in i själva länken som skickar till nästa sida, borde vara där skon klämmer.
Andreas
Skulla man inte kunna lösa det där lite enklare med lite avancerad SQL istället? .
La in det i länken som du sa, men det fungerar fortfarande inte. Förmodligen för att jag inte gjort rätt.
Skrev så här:
"<a href='" & scriptname & "?whichpage=" & counter & "&pagesize=" & mypagesize & "&Typesearch=Ort'>"
------------------
//Mav
Problemet är väl att du inte skickar med något värde i inbox... skicka med den i Querystringen också...
------------------
Kom hem till mig...
Byt ut:
visainfo = Request.Form("inbox")
Mot:
visainfo = Request("inbox")
Och:
ref = "<a href='" & scriptname & "?whichpage=" & counter & "&pagesize=" & mypagesize & "'>"
Mot:
ref = "<a href='" & scriptname & "?whichpage=" & counter & "&pagesize=" & mypagesize & "&inbox=" & visainfo & "'>"
------------------
Kom hem till mig...
Tack för hjälpen men problemet kvarstår, den listar hela databasen trots detta. Har ni några andra förslag?
------------------
//Mav
En grej till...
Byt alla Request.Form("TypeSearch") till Request("TypeSearch")
och släng med den i URL:en
dvs.
ref = "<a href='" & scriptname & "?whichpage=" & counter & "&typesearch=" & Request("TypeSearch") "&pagesize=" & mypagesize & "&inbox=" & visainfo & "'>"
------------------
Gunnar Liljas - webbutvecklare
Leon Reklambyrå AB
Tusen tack! Nu funkar det som det ska.
Har en annan fråga, hur ska jag göra för att sida 1 inte ska vara länkad. Eller snarare hur ska jag göra för att den sida man är på inte är länkad?
Och när det är färre än tio träffar är det ju onödigt att det står sid 1. Hur gör jag för att ta bort det?
Hoppas ni kan hjälpa mig med även detta.
------------------
//Mav
Inneslut länken i denna If-sats:
If Maxcount <> 1 then
End If
------------------
Kom hem till mig...