Avatar billede bpedersen Novice
14. marts 2005 - 23:03 Der er 1 løsning

Flette søgeside med pagingside

Jeg har en søgeside, som jeg gerne vil have "flettet" sammen med en side der skriver resultaterne ud som links. Har begge filer, men kan ikke hitte ud af hvordan de flettes sammen. Kan I hjælpe?

pft
Brian

Koderne er som følger:
Pagingfilen:
<div class="header">Dessert</div><br><br>
<div class="artikel">
<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "Select * FROM opskrifter Where kategori='dessert'"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../db/opskrifter.mdb")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
  rs.PageSize = 10
  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
    ' Opskriftens navn
  strNavn = rs("navn")

  ' lav et link til opskrift_oplysninger.asp med Id-værdien i URL
  strLink = "<a href='default2.asp?m=opskrift_oplysninger&id=" & rs("Id") & "'>" & strNavn & "</a>"

  ' Liste med links
  Response.Write "<li>" & strLink & "</li>"

  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=default2.asp?m=m-snack&page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
  Response.Write "<a href=default2.asp?m=m-snack&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 href=default2.asp?m=m-snack&page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
  Response.Write "&gt;&gt;"
End If
%><br><br>
<a href="java script:history.go('-1')">Tilbage</a><br><br>

</div>

***********************************************************
Søgefilen:
<% Response.Buffer = True %>
<%
' Henter værdien fra soeg.htm
strKeyword = Trim(Request.Form("Keyword"))

If Len(strKeyword) = 0 Then
    ' Hvis der ikke er skrevet i feltet
    Response.Clear
    Response.Redirect("default.asp?m=searchform")
Else
    ' Hvis der er skrevet i feltet
    strKeyword = Replace(strKeyword,"'","''")
End If


' Opbygger en dynamisk SQL streng
strSQL = "SELECT Id, navn, ingredienser, tips FROM Opskrifter WHERE"
strSQL = strSQL & " (navn LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (ingredienser LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (tips LIKE '%" & strKeyword & "%')"

' Skaber DSNLess forbindelse til DBen
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../db/opskrifter.mdb")
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN

' Skaber et recordset udfra SQL strengen
Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
    ' Hvis der er fundet poster på søgningen
    Response.Write "<p><div class=header>Søgeresultat</div></p>"
    Response.Write "<table border=0>"
   
    Do While Not rs.EOF
        Response.Write "<tr><td class=artikel>" & rs("navn") & "</td>"
       
        rs.MoveNext
    Loop
    Response.Write "</table>"
Else
    ' Hvis der ikke er fundet poster på søgningen
    Response.Write "<p>Der er ikke fundet noget på denne søgning</p>"
End If

' Rydder op efter os
myConn.Close
Set myConn = Nothing
%>
Avatar billede bpedersen Novice
12. april 2005 - 13:59 #1
Lukker
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