Avatar billede dines Nybegynder
29. april 2000 - 19:58 Der er 8 kommentarer og
1 løsning

Paging på søgeside

Hvad gør jeg galt ??
Søgeresultatet kommer rigtigt frem med angivelse af antal sider, MEN når jeg går til side 2 eller en anden side hender den alle poster og laver sideantallet om ??

Her er koden !<html><head>
<title>Forhandlere</title>

</head><BODY BGCOLOR="#ffffff" background="giffer/backmain1.gif" text="" link=""
vlink="" alink="" #0000a0"" #0000a0"" #0000a0"" #0000a0"">
<center>
<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT ID, Navn, Adresse, Postnr, Bynavn, Telefon, Beskrivelse FROM forhandler2  WHERE"
strSQL = strSQL & " (Postnr LIKE '" & request.form("sog") & "%')"
strSQL = strSQL & " ORDER BY Postnr"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../log/search.mdb")
rs.Open strSQL, strDSN, 1, 1

If Not (rs.BOF Or rs.EOF) Then
  rs.PageSize = 4
  rs.AbsolutePage = intPage
  intRecCount = rs.PageSize
  intPageCount = rs.PageCount
  Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
  Do While Not rs.EOF And intRecCount > 0
    Response.Write "<font size=5 face=Tahoma><strong>"
    Response.Write rs("Navn")
    Response.Write "</STRONG>" & "</font>" & "<br>" 
    Response.Write "<table width=400>"
    Response.Write "<valign=top>"
    Response.Write "<tr>"
    Response.Write "<td width=100>"
    Response.Write" <img src="
    Response.Write rs("id")
    Response.Write ">" & "</td>"
    Response.Write "<td width=300 valign=top>"
    Response.Write rs("adresse") & "&nbsp; •&nbsp;" & rs("Postnr") & "&nbsp;" & rs("Bynavn") & "<br>"
    Response.Write rs("Telefon") & "&nbsp; •&nbsp;" &  "&nbsp; •&nbsp;" &rs("Beskrivelse") & "&nbsp;" & rs("ID")
    Response.Write "</td>"
    Response.Write "</tr>"
    Response.Write "</table>"
  intRecCount = intRecCount - 1
  rs.MoveNext
  Loop
End If
rs.Close
Set rs = Nothing

Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
  Response.Write "<a href=searchcli.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
  Response.Write "<a href=searchcli.asp?page=" & intPage - 1 & " ><img src=giffer/vpil.gif border=no></a>"
Else
  Response.Write "<img src=giffer/blankpil.gif>"
End If

Response.Write "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
  Response.Write "<a href=searchcli.asp?page=" & intPage + 1 & " ><img src=giffer/hpil.gif border=no></a> "
Else
  Response.Write "<img src=giffer/blankpil.gif>"
End If
%>
<p align="center></p>
</body></html>

Avatar billede stingbat Nybegynder
30. april 2000 - 01:36 #1
Prøv at ersatte til følgene:

Set rs = Server.CreateObject("ADODB.RecordSet")
rs.CursorLocation = adUseServer
strSQL = "SELECT ID, Navn, Adresse, Postnr, Bynavn, Telefon, Beskrivelse FROM forhandler2  WHERE"
strSQL = strSQL & " (Postnr LIKE '" & request.form("sog") & "%')"
strSQL = strSQL & " ORDER BY Postnr"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../log/search.mdb")
rs.Open strSQL, strDSN, 1, 1


Og så evt. erstatte med dette:

rs.PageSize = 4
intPageCount = rs.PageCount
If intPage < 1 Then intPage = 1
If intPage > intPageCount Then intPage = intPageCount
rs.AbsolutePage = intPage
intRecCount = rs.PageSize

i stedet for:

rs.PageSize = 4
rs.AbsolutePage = intPage
intRecCount = rs.PageSize
intPageCount = rs.PageCount


Derefter burde det hele gerne virker.. Ellers er du velkommen til at kontakte mig!

// Stingbat
stingbat@hotmail.com
Avatar billede stingbat Nybegynder
30. april 2000 - 01:37 #2
... glemte nok at sige, at det du sikkert manglede i at få det til at virke er:
rs.CursorLocation = adUseServer

// Stingbat
Avatar billede ortrak Nybegynder
30. april 2000 - 01:43 #3
hmm... så vidt jeg kan se er hele scriptet lidt råddent. Enten skal du prøve at lave det helt forfra, eller også skal du overtale mig til at give dig et af mine...


/ortrak
Avatar billede dines Nybegynder
30. april 2000 - 12:53 #4
Hej stinghat.
Det giver følgende:ADODB.Recordset error '800a0bb9'

The application is using arguments that are of the wrong type, are out of acceptable range, or are in conflict with one another.

/climasider/searchcli.asp, line 15

retur på :
rs.CursorLocation = adUseServer


Avatar billede dines Nybegynder
30. april 2000 - 12:55 #5
Hej Ortrak.
Hvad skal der til at overtale dig .?
evt. mail dines@dines.dk

:-) til alle.
Avatar billede ortrak Nybegynder
30. april 2000 - 16:43 #6
Der skal ikke noget til - det var bare for sjov. Jeg finder det lige frem...

/ortrak
Avatar billede ortrak Nybegynder
30. april 2000 - 16:48 #7
øhm. By the way: Skal det bruges i kommercielt øjemed?


/ortrak
Avatar billede dines Nybegynder
30. april 2000 - 17:20 #8
Hej Ortrak..
Nø.. Tja..
Noget til en nonprofit forening U/B.

Dines
Avatar billede dines Nybegynder
02. maj 2000 - 19:59 #9
Tak for ingen hjælp
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester