---
title: "Form med paging"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/64620-form-med-paging"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Jay81"
published: "2003-01-13T00:01:03.000Z"
updated: "2003-01-13T18:07:00.000Z"
replies: 13
views: 239
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/64620-form-med-paging"
---

# Form med paging

## #1 — Jay81, 2003-01-13T00:01Z

Först och främst vill jag bara skriva att jag har sökt en hel del på forumet efter mitt problem men inte lyckats hitta något som passar  ;) 

Det är så att jag har gjort en liten sökfunktion på sidan, när man klickat på sök så kommer man till en ny sida (search.asp) som ska innehålla 30 resultat på varje sida. Använder mig av en form för sökningen som ser ut så här

```
<form action="search.asp?what=" method="post">
<input size=15 type="text" name="sokord">
<input type="submit" value="search">
</form>
```

 
Så långt är det inga problem, men när jag ska bläddra till tex sidan 2 (första söksidan fungerar korrekt och listar övriga sidor) så kommer det här felmeddelandet

> Error Type:
> ADODB.Recordset (0x800A0BB9)
> Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.
> /musicdb/search.asp, line 105

 

... på den här koden...

```
RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic
```

 
Jag har paging på första sidan som fungerar fast då är det bara Querystrings och nu kommer det en form med i bilden  ;) 

Så här ser hela koden ut för den sidan man kommer till efter man klickat på sökknappen

```
<%
Const perSida = 30 
Dim page 
If Request.QueryString("page") = "" then 
page = 1 
Else 
page = Request.QueryString("page") 
End If 

Dim Connect
Dim RecSet
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\musicdb\db.mdb"
Set RecSet = Server.CreateObject("ADODB.Recordset")

RecSet.CursorLocation = 3
RecSet.CacheSize = perSida

If Request.Form("sokord") <> "" Then
SQL = "Select * from Skivor Where Artist Like '%" & Request.Form("sokord") & "%' ORDER BY Artist asc, Skivnamn asc"
End If

RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

If RecSet.EOF Then 
Response.Write"Nothing matched your search..." 
Else 

RecSet.MoveFirst 
RecSet.PageSize = perSida 

Dim TotalPages 
TotalPages = RecSet.PageCount 
RecSet.AbsolutePage = page 
Dim count 
%>

<% 
Count = 0 
Do While Not RecSet.EOF And Count < RecSet.PageSize 
%> 

<% 
If TotalPages <> 1 Then
If (Int(page)) <> 1 Then
%>
<a href="search.asp?page=<%=(Int(page)-1)%>&what=<% =Request.Form("sokord") %>">&#171;</a>
<%Else%>
&#171;
<%End If%>
<%
Dim Pages 
For Pages = 1 To TotalPages 
%> 
<%If (Int(Pages)) = (Int(page)) Then%>
<%=Pages%> 
<%Else%><a href="search.asp?page=<%=Pages%>&what=<% =Request.Form("sokord") %>"><%=Pages%></a> 
<%End If%>
<%Next%> 
<%End If%> 

<% If (Int(page)) <> (Int(TotalPages)) Then %>
<a href="search.asp?page=<%=(Int(page)+1)%>&what=<% =Request.Form("sokord") %>">&#187;</a>

<%Else%>
&#187;
<%End If%>
```

 

Problemet verkar vara att Request.Form inte kommer med till nästa sida. Någon vänlig själ som skulle kunna hjälpa till? :OO

Permalänk: https://www.webforum.nu/p/64620

## #2 — solbulle, 2003-01-13T00:08Z

När du skriver:

what=\<% =Request.Form("sokord") %\>

"Lägger" du ju över det hela i variablen, querystringen what

Byt namn på what till sokord samt överallt där du använder Request.Form("sokord") skriver du Request("sokord")

Alt. lägger du requesten i en variabel högst upp och arbetar med den på sidan.

Typ:

sokord = Request.Form("sokord")

Permalänk: https://www.webforum.nu/p/910930

## #3 — crisse6, 2003-01-13T00:16Z

solis, besviken, killen gjorde sitt forsta inlagg har och inte ens ett valkomnade ;)

**Välkommen till wF!**

Hoppas du kommer trivas!

Back to topic ;)

Ett tips, "bryt" inte asp-taggarna om du inte maste, ser rorigt ut ;)

Permalänk: https://www.webforum.nu/p/910933

## #4 — solbulle, 2003-01-13T00:18Z

Attan, ursäkta!  **Välkommen!**

Hjälp efter sju minuter mitt i natten fick han i alla fall. ;)

Permalänk: https://www.webforum.nu/p/910936

## #5 — Jay81, 2003-01-13T00:26Z

:e  Tack så mycket.

Det hjälpte dock inte mycket fortfarande samma fel...

Har lagt till 

```
sokord = Request.Form("sokord")
```

 
högst upp och ersatt what med sokord och ändrat 

```
<% =Request.Form("sokord") %>">
```

 
till

```
<% =sokord %>
```

Permalänk: https://www.webforum.nu/p/910939

## #6 — crisse6, 2003-01-13T01:31Z

vad far du om du skriver ut sokord da?

Permalänk: https://www.webforum.nu/p/910971

## #7 — solbulle, 2003-01-13T01:33Z

Kanske...

```
<%
Const perSida = 30 
Dim page 
If Request.QueryString("page") = "" then 
page = 1 
Else 
page = Request.QueryString("page") 
End If 

Dim Connect
Dim RecSet
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\musicdb\db.mdb"
Set RecSet = Server.CreateObject("ADODB.Recordset")

RecSet.CursorLocation = 3
RecSet.CacheSize = perSida

sokord = Request("sokord")

If sokord <> "" Then
	SQL = "Select * from Skivor Where Artist Like '%" & sokord & "%' ORDER BY Artist asc, Skivnamn asc"
End If 'Flytta längst ner?

RecSet.Open SQL, Connect, adOpenStatic, adLockOptimistic

If RecSet.EOF Then 
Response.Write"Nothing matched your search..." 
Else 

RecSet.MoveFirst 
RecSet.PageSize = perSida 

Dim TotalPages 
TotalPages = RecSet.PageCount 
RecSet.AbsolutePage = page 
Dim count 

Count = 0 
Do While Not RecSet.EOF And Count < RecSet.PageSize 

'Här ska väl typ loppen o utskrivandet vara antar jag.

If TotalPages <> 1 Then
	If (Int(page)) <> 1 Then
		response.write "<a href=""search.asp?page=" & (Int(page)-1)& "&sokord=" & sokord & """>«</a>"
	Else
		response.write "«"
	End If

Dim Pages 
	For Pages = 1 To TotalPages 
		If (Int(Pages)) = (Int(page)) Then
			response.write Pages
		Else
			response.write "<a href=""search.asp?page=" & Pages & "&sokord=" & sokord & """>" & Pages & "</a>"
		End If
	Next
End If

If (Int(page)) <> (Int(TotalPages)) Then
	response.write "<a href=""search.asp?page=" & (Int(page)+1) & "&sokord=" & sokord & """>»</a>"
Else
	response.write "»"
End If
%>
```

Iofs skulle jag vilja flytta ner "End If" som är precis under Sql-frågan till längst ner, annars lär du få ett felmeddelande om du inte har något värde med dig.

Permalänk: https://www.webforum.nu/p/910975

## #8 — solbulle, 2003-01-13T01:34Z

Attans Crisse, det är banne mig du och jag som håller fanan högt uppe vid de här tidpunkterna. :)

Permalänk: https://www.webforum.nu/p/910976

## #9 — Jay81, 2003-01-13T01:44Z

Skriver jag ut "sokord" så skriver det ut det som man söker efter, det man fyller i i formuläret alltså. 
Måste dra till jobbet nu så jag får återkomma om den längre koden, hinner inte kollat på den nu.

Men tack ska Ni ha för hjälpen så här långt  :h

Permalänk: https://www.webforum.nu/p/910981

## #10 — CatZ, 2003-01-13T02:46Z

och fan själv är uppe §jr

Permalänk: https://www.webforum.nu/p/910994

## #11 — crisse6, 2003-01-13T03:24Z

Solbulle, det ar fan hog standard pa oss ;)

Jay81, funkade solbulle's kod? annars: du sa att det verkar som om det ar tomt nar du klickar for att visa nasta sida? Vad skrivs ut pa sida2 tex fran formularet?

Permalänk: https://www.webforum.nu/p/910997

## #12 — solbulle, 2003-01-13T05:28Z

> Måste dra till jobbet nu

Jo, det kanske man skulle göra...

Permalänk: https://www.webforum.nu/p/911004

## #13 — Jay81, 2003-01-13T16:42Z

Det verkar som det fungerar nu, för den intresserade så kan jag skriva hur "jag" gjorde.   ;) 

Jag använde koden som solbulle skrivit, fast då ville inte "sokordet" komma med i Querystringen så det ville inte lista ut det man sökt på så jag lade till en sak.

```
If Request.Querystring("sokord") = "" Then
sokord = Request.Form("sokord")
End If

' Det här står fortfarande kvar fast med ovanstående kod under sig
sokord = Request("sokord")
```

 
Och så flyttade jag End If i SQL-satsen långt ner  ;) 
Det är säkert något onödigt som är med men det fungerar i alla fall :OO 

Tusen tack!   :h

Permalänk: https://www.webforum.nu/p/911466

## #14 — solbulle, 2003-01-13T18:07Z

Lysande!

Permalänk: https://www.webforum.nu/p/911531

---

Tråden på webben: https://www.webforum.nu/amne/asp/64620-form-med-paging
