Avatar billede jackpower Nybegynder
14. marts 2001 - 17:14 Der er 14 kommentarer og
1 løsning

Paging problemer

Hejsa nogen der kan se hvorfor det her ikke virker?

Den skriver fint nok (eksempelvis) side 1 af 10
Men linkne til side 2 til 10 er forkerte, den næste side man kommer ind på har den ikke de rigtige resultater på, og der står så (eksempelvis) side 2 af 65

Her er det hele så I kan se hvad det er jeg snakker om:

<%
\' Henter værdien fra soeg.htm
If Trim(Request.Form(\"amin\")) = \"\" then
  stramin = 1
else
  stramin = Trim(Request.Form(\"amin\"))
End if

If Trim(Request.Form(\"amax\")) = \"\" then
  stramax = 99
Else
  stramax = Trim(Request.Form(\"amax\"))
End if

strsex = Trim(Request.Form(\"sex\"))
strpic = Trim(Request.Form(\"pic\"))

stramin = Replace(stramin,\"\'\",\"\'\'\")
stramax = Replace(stramax,\"\'\",\"\'\'\")
strsex = Replace(strsex,\"\'\",\"\'\'\")
strpic = Replace(strpic,\"\'\",\"\'\'\")


\' Opbygger en dynamisk SQL streng
strSQL = \"SELECT brugernavn, sex, foto, alder, adresse, hjem FROM users WHERE\"
strSQL = strSQL & \" (sex LIKE \'\" & strsex & \"%\')\"
strSQL = strSQL & \" and (alder BETWEEN \'\" & stramin & \"\' AND \'\" & stramax & \"\')\"
strSQL = strSQL & \" and (foto LIKE \'\" & strpic & \"%\') ORDER BY brugernavn\"

\' Skaber DSNLess forbindelse til DBen
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & server.mappath(\"database/profil.mdb\")
\'strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=d:\\Cl-p_db\\profil.mdb\"
Set myConn = Server.CreateObject(\"ADODB.Connection\")
myConn.Open strDSN

\' Skaber et recordset udfra SQL strengen
Set rs = myConn.Execute(strSQL)

intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

Set rspage = Server.CreateObject(\"ADODB.RecordSet\")
rspage.Open strSQL, strDSN, 1

If Not (rs.BOF Or rs.EOF) Then
      Response.Write(\"<table border=\'0\' width=\'100%\' bgcolor=\'#8090C0\' cellspacing=\'0\' cellpadding=\'0\'><tr><td width=\'20%\' bgcolor=\'#8090C0\'><font face=\'Arial\'><b>&nbsp;&nbsp;Profil / nick</b></font></td><td width=\'16%\' bgcolor=\'#8090C0\' align=\'center\'><font face=\'Arial\'><b>Køn</b></font></td><td width=\'16%\' bgcolor=\'#8090C0\' align=\'center\'><font face=\'Arial\'><b>Alder</b></font></td><td width=\'16%\' bgcolor=\'#8090C0\' align=\'left\'><font face=\'Arial\'><b>Bopæl</b></font></td><td width=\'16%\' bgcolor=\'#8090C0\' align=\'center\'><font face=\'Arial\'><b>Billede</b></font></td><td width=\'16%\' bgcolor=\'#8090C0\' align=\'center\'><font face=\'Arial\'><b>Hjemmeside</b></font></td></tr>\")

      rspage.PageSize = 10
      rspage.AbsolutePage = intPage
      intRecCount = rspage.PageSize
      intPageCount = rspage.PageCount
    If rspage.EOF then
      Response.Write(\"<br><br><b><font face=\'Arial\'><center>Der er ikke fundet noget på denne søgning.</b></font></center>\") & vbCrLF
    End If
  Do While Not rs.EOF And intRecCount > 0

      Response.Write(\"<tr><td width=\'16%\' colspan=\'6\' bgcolor=\'#8090C0\'><hr></td></tr>\")
      Response.Write(\"<tr><td width=\'20%\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>&nbsp;&nbsp;<a onfocus=this.blur() onmouseover=\'window.status\' title=\'Klik her for at se min profil\' href=\'checkbrugeradvse.asp?bruger=\" & rs(\"brugernavn\") & \"\' target=\'window\'>\" & rs(\"brugernavn\") & \"</a>\" & \"</b></font>\" & vbCrLf & \"</td>\")
      if rs(\"sex\") = \"1\" then 
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"<img align=\'middle\' border=\'0\' src=\'images/male.gif\' WIDTH=\'13\' HEIGHT=\'21\'>\" & \"</b></font>\" & vbCrLf & \"</td>\")
      end if
      if rs(\"sex\") = \"2\" then
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"<img align=\'middle\' border=\'0\' src=\'images/female.gif\' WIDTH=\'13\' HEIGHT=\'21\'>\" & \"</b></font>\" & vbCrLf & \"</td>\")
      end if
      if rs(\"sex\") = \"\" then
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"&nbsp;\" & vbCrLf & \"</td>\")
      end if     
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & rs(\"alder\") & \"</b></font>\" & vbCrLf & \"</td>\")
      If rs(\"adresse\") = \"\" then
      Response.Write (\"<td width=\'16%\' align=\'left\'> &nbsp; </td>\")
      Else    
      Response.Write(\"<td width=\'16%\' align=\'left\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & left(rs(\"adresse\"),10) & \"</b></font>\" & vbCrLf & \"</td>\")
      End if
      if rs(\"foto\") = \"1\" then
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"<img align=\'middle\' alt=\'Billedprofil\' border=\'0\' src=\'images/pic_profil.gif\' WIDTH=\'21\' HEIGHT=\'21\'>\" & vbCrLf & \"</td>\")
      Else
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"&nbsp;\" & vbCrLf & \"</td>\")
      end if
      If rs(\"hjem\") <> \"http://\" and rs(\"hjem\") <> \"\" then
      Response.Write(\"<td width=\'16%\' align=\'center\'><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'><a onfocus=this.blur() href=\'\" & rs(\"hjem\") & \"\' target=\'window\'>\" & \"<img align=\'middle\' border=\'0\' src=\'images/house.gif\' WIDTH=\'23\' HEIGHT=\'21\' alt=\" & rs(\"hjem\") & \">\" & \"</a>\" & \"</b></font>\" & vbCrLf & \"</td></tr>\")
      else
      Response.Write (\"<td width=\'16%\' align=\'center\'> &nbsp; </td></tr>\")
      end If

        intRecCount = intRecCount - 1
    rs.MoveNext
    Loop
    Response.Write \"</table>\"
Else
    \' Hvis der ikke er fundet poster på søgningen
    Response.Write(\"<table border=\'0\' width=\'100%\' bgcolor=\'#8090C0\' cellspacing=\'0\' cellpadding=\'0\'><tr><td width=\'100%\' bgcolor=\'#8090C0\'><br><br><font face=\'Arial\'><p align=\'center\'><b>Der er ikke fundet noget på denne søgning.</b></font></p></td></tr></table>\")
End If

\' Rydder op efter os
myConn.Close
Set myConn = Nothing
%>
<table border=\"0\" width=\"100%\" bgcolor=\"#8090C0\" cellspacing=\"0\" cellpadding=\"0\">
  <tr>
  <td width=\"100%\" align=\"center\">
<%
Response.Write \"<br><br><p><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>Side \" & intPage & \" af \" & intPageCount & \" <br>\"
For intNum = 1 To intPageCount
if Clng(intNum) = Clng(intPage) then
  Response.Write \"\" & intNum & \"&nbsp;\"
  else
  Response.Write \"<a onfocus=this.blur() href=search.asp?page=\" & intNum & \">\" & intNum & \"</a> \"
End if
Next

Response.Write \"<br>\"
If Clng(intPage) > 1 Then
  Response.Write \"<a onfocus=this.blur() href=search.asp?page=\" & intPage - 1 & \">&lt;&lt;</a>\"
Else
  Response.Write \"&lt;&lt;\"
End If

Response.Write \"&nbsp;\"

If Clng(intPage) < Clng(intPageCount) Then
  Response.Write \"<a onfocus=this.blur() href=search.asp?page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
  Response.Write \"&gt;&gt;\"
End If
%> 
<br>
<a onfocus=this.blur() href=\"seprofilnavn.asp\">Tilbage til oversigt</b></font></a> 
  </td>
  </tr>
</table>

Håber nogen kan hjælpe.

Mvh
Jack!!
Avatar billede nute Nybegynder
14. marts 2001 - 17:37 #1
du skal sende ditt søk videre som parameter på \"previous\" og \"next\" linkene dine...

/nute
Avatar billede jackpower Nybegynder
14. marts 2001 - 17:45 #2
Ja okay det er jeg med på, men how og hvorledes?? - har snart at sige prøvet alt, men lige meget hjalp det, så kan du vise mig hvordan???

Mvh
Jack!!
Avatar billede nute Nybegynder
14. marts 2001 - 17:50 #3
alle de søkeparametre du tar inn på siden (ved hjelp av request.form(\"...\") ), skal du sende videre på dine \"navigasjonslinker\". La oss si du har et søkefelt som heter \"name\" og et annet \"email\", så skal din link til neste side bygges opp sånn:

<a href=\'nesteside.asp?name=\" & request.form(\"name\") & \"&email=\" & request.form(\"email\") & \"\'>Neste</a>

u c ?
Avatar billede jackpower Nybegynder
14. marts 2001 - 18:03 #4
det har jeg prøvet, men den tager ikke request.form med over på næste side....
Hmm så skulle jeg lave det som en request.QueryString... det var måske værd at prøve..
Avatar billede nute Nybegynder
14. marts 2001 - 18:04 #5
du skal bruke request.querystring...

/nute
Avatar billede tpiil Nybegynder
14. marts 2001 - 23:17 #6
jeg ved ikke om det kan gøre noget men prøv at lukke db\'en til sidst og ikke så tidligt :)
Avatar billede jackpower Nybegynder
14. marts 2001 - 23:17 #7
Her prøvet med flg.
  Response.Write \"<a onfocus=this.blur() href=search.asp?amin=\" & request.QueryString(\"amin\") &\"&amax=\" & request.QueryString(\"amax\") &\"&sex=\" & request.QueryString(\"sex\") &\"&pic=\" & request.QueryString(\"pic\") &\"&page=\" & intPage + 1 & \">&gt;&gt;</a> \"

Men ak nej heller ikke det virket.....

Mvh
Jack!!
Avatar billede jackpower Nybegynder
14. marts 2001 - 23:22 #8
tpiil>> Nej det ændre desværre heller ikke noget, den viser godt nok side 2 og 3 osv... men det er nøjagtig det samme som på side 1 :o(
Avatar billede tpiil Nybegynder
14. marts 2001 - 23:24 #9
hvis nu der er f.eks. 45 poster i en db hvordan vil du så have det til at se ud??
Avatar billede jackpower Nybegynder
14. marts 2001 - 23:26 #10
Er ikke helt med på hvad du mener, men det den skal er at hvis der er f.eks 100 hits på en søgning, så skal den lave 10 sider med 10 hits per side....
Avatar billede tpiil Nybegynder
14. marts 2001 - 23:28 #11
ja men er det posterne på hver side der er noget i vejen med eller er det linksene til de forskellige sider??
Avatar billede jackpower Nybegynder
14. marts 2001 - 23:33 #12
Det er posterne der er ens..

Har en anden side her, som faktisk laver det samme, men denne her virker, kan bare ikke se hvad forskelden er kan du??

<body bgcolor=\"#80C0C0\" text=\"#FFFFFF\" link=\"#FFFFFF\" Vlink=\"#FFFFFF\" alink=\"#FFFFFF\">
<%
intPage = Request(\"page\")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

Set rs = Server.CreateObject(\"ADODB.RecordSet\")
strSQL = \"select * from users where brugernavn LIKE \'\" & request.QueryString(\"id\") &\"%\'\"
strDSN = \"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=\" & server.mappath(\"database/profil.mdb\")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
%>
<table border=\"0\" width=\"100%\" bgcolor=\"#8090C0\" height=\"21\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td width=\"29\" height=\"21\" valign=\"top\"><img src=\"images/h1.gif\" border=\"0\" width=\"22\" height=\"21\"></td>
    <td width=\"100%\" border=\"0\" height=\"21\" valign=\"top\" align=\"center\" bgcolor=\"#8090C0\">&nbsp;</td>      
    <td width=\"29\" height=\"21\" valign=\"top\" align=\"right\"><img src=\"images/h2.gif\" border=\"0\" width=\"22\" height=\"21\"></td>
  </tr>
</table>
<table border=\"0\" width=\"100%\" bgcolor=\"#8090C0\" cellspacing=\"0\" cellpadding=\"0\">
  <tr>
  <td width=\"100%\" height=\"43\" ><p align=\"center\"><img border=\"0\" src=\"images/Headings/se%20profil.gif\" WIDTH=\"157\" HEIGHT=\"43\"><br></p></td>
  </tr>
</table>
<table border=\"0\" width=\"100%\" bgcolor=\"#8090C0\" cellspacing=\"0\" cellpadding=\"0\">
    <tr>
    <td width=\"20%\" colspan=\"6\" bgcolor=\"#8090C0\">&nbsp;
    </td>
    </tr>
    <tr>
      <td width=\"20%\" bgcolor=\"#8090C0\"><font face=\"Arial\"><b>&nbsp;&nbsp;Profil / nick</b></font></td>
      <td width=\"16%\" bgcolor=\"#8090C0\" align=\"center\"><font face=\"Arial\"><b>Køn</b></font></td>
      <td width=\"16%\" bgcolor=\"#8090C0\" align=\"center\"><font face=\"Arial\"><b>Alder</b></font></td>
      <td width=\"16%\" bgcolor=\"#8090C0\" align=\"left\"><font face=\"Arial\"><b>Bopæl</b></font></td>
      <td width=\"16%\" bgcolor=\"#8090C0\" align=\"center\"><font face=\"Arial\"><b>Billede</b></font></td>
      <td width=\"16%\" bgcolor=\"#8090C0\" align=\"center\"><font face=\"Arial\"><b>Hjemmeside</b></font></td>
    </tr>
<tr>
<td width=\"16%\" colspan=\"6\" bgcolor=\"#8090C0\">&nbsp;
<%
  rs.PageSize = 10
  rs.AbsolutePage = intPage
  intRecCount = rs.PageSize
  intPageCount = rs.PageCount
  If rs.EOF then
  Response.Write(\"<br><br><b><font face=\'Arial\'><center>Der er ingen brugere med \" & request.QueryString(\"id\") &\" der har oprettet profil hos ChatLine</b></font></center>\") & vbCrLF
  End If
  Do While Not rs.EOF And intRecCount > 0
%>
</td>
</tr>
      <tr>
      <td width=\"16%\" colspan=\"6\" bgcolor=\"#8090C0\"><hr></td>
    </tr>
<tr>
      <td width=\"20%\"><%Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>&nbsp;&nbsp;<a onfocus=this.blur() onmouseover=\'window.status\' title=\'Klik her for at se min profil\' href=\'checkbrugeradvse.asp?bruger=\" & rs(\"brugernavn\") & \"\' target=\'window\'>\" & rs(\"brugernavn\") & \"</a>\" & \"</b></font>\") & vbCrLf %> </td>
      <td width=\"16%\" align=\"center\"><% if rs(\"sex\") = \"\" then
      Response.Write \"&nbsp;\"
      End if
      if rs(\"sex\") = \"1\" then
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"<img align=\'middle\' border=\'0\' src=\'images/male.gif\' WIDTH=\'13\' HEIGHT=\'21\'>\" & \"</b></font>\") & vbCrLf
      end if
      if rs(\"sex\") = \"2\" then
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"<img align=\'middle\' border=\'0\' src=\'images/female.gif\' WIDTH=\'13\' HEIGHT=\'21\'>\" & \"</b></font>\") & vbCrLf
      end if%></td>
      <td width=\"16%\" align=\"center\"><%If rs(\"alder\") = \"\" then
      Response.Write \"&nbsp;\"
      Else    
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & rs(\"alder\") & \"</b></font>\") & vbCrLf
      End if%></td>
      <td width=\"16%\" align=\"left\"><%If rs(\"adresse\") = \"\" then
      Response.Write \"&nbsp;\"
      Else    
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & left(rs(\"adresse\"),10) & \"</b></font>\") & vbCrLf
      End if%></td>
      <td width=\"16%\" align=\"center\"><% if rs(\"foto\") = \"1\" then
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"<img align=\'middle\' alt=\'Billedprofil\' border=\'0\' src=\'images/pic_profil.gif\' WIDTH=\'21\' HEIGHT=\'21\'>\") & vbCrLf
      Else
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>\" & \"&nbsp;\") & vbCrLf
      end if%></td>
      <td width=\"16%\" align=\"center\"><%If rs(\"hjem\") <> \"http://\" and rs(\"hjem\") <> \"\" then
      Response.Write(\"<b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'><a onfocus=this.blur() href=\'\" & rs(\"hjem\") & \"\' target=\'window\'>\" & \"<img align=\'middle\' border=\'0\' src=\'images/house.gif\' WIDTH=\'23\' HEIGHT=\'21\' alt=\" & rs(\"hjem\") & \">\" & \"</a>\" & \"</b></font>\") & vbCrLf
      else
      Response.Write \"&nbsp;\"
      end If%></td>
    </tr>
  <%  intRecCount = intRecCount - 1
  rs.MoveNext
  Loop
End If
rs.Close
Set rs = Nothing

    %>
</table>
<table border=\"0\" width=\"100%\" bgcolor=\"#8090C0\" cellspacing=\"0\" cellpadding=\"0\">
  <tr>
  <td width=\"100%\" align=\"center\"><br><br>
<%
Response.Write \"<p><b><font face=\'Arial\' color=\'#FFFFFF\' size=\'-1\'>Side \" & intPage & \" af \" & intPageCount & \" <br>\"
For intNum = 1 To intPageCount
if Clng(intNum) = Clng(intPage) then
  Response.Write \"\" & intNum & \"&nbsp;\"
  else
  Response.Write \"<a onfocus=this.blur() href=regprofil.asp?id=\" & request.QueryString(\"id\") &\"&page=\" & intNum & \">\" & intNum & \"</a> \"
End if
Next

Response.Write \"<br>\"
If Clng(intPage) > 1 Then
  Response.Write \"<a onfocus=this.blur() href=regprofil.asp?id=\" & request.QueryString(\"id\") &\"&page=\" & intPage - 1 & \">&lt;&lt;</a>\"
Else
  Response.Write \"&lt;&lt;\"
End If

Response.Write \"&nbsp;\"

If Clng(intPage) < Clng(intPageCount) Then
  Response.Write \"<a onfocus=this.blur() href=regprofil.asp?id=\" & request.QueryString(\"id\") &\"&page=\" & intPage + 1 & \">&gt;&gt;</a> \"
Else
  Response.Write \"&gt;&gt;\"
End If
%> 
<br>
<a onfocus=this.blur() href=\"seprofilnavn.asp\">Tilbage til oversigt</b></font></a> 
  </td>
  </tr>
</table>
Nå men må forsætte i morgen er død træt, men tak for hjælpen indtil nu, kigger på det igen imorgen.
Mvh
Jack!!
Avatar billede tpiil Nybegynder
14. marts 2001 - 23:35 #13
hvis du har ICQ så kan du lige komme på 73543734 eller send alle filerne med db til tpiil@netstuff.dk
Avatar billede tpiil Nybegynder
16. marts 2001 - 23:44 #14
så fik vi fikset det jeg gider altså ikke udskrive den lang kode herinde :)
Avatar billede jackpower Nybegynder
16. marts 2001 - 23:45 #15
Det er oki med mig, når bare det virker :o)

Thanks for hjælpen

Mvh
Jack!!
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