Jag har gjort en sökmotor som ska visa 10 träffar på varje sida. Den visar rätt resultat men när jag trycker på sida 2 tex så följer inte resultaten med utan den är tomt där den ska visas. Vad är det för fel på scriptet? Du måste ta med värdet för soktext till nästa sida.Sökmotor-träffar på flera sidor
<table border="0" width="430" cellspacing="0" cellpadding="0" height="59">
<tr>
<td class="rubrik1" valign="top" height="46">Sökmotor </td>
</tr>
<tr>
<form method="POST" action="sokasida.asp">
<td class="text11">Skriv ditt sökord här:<br>
<input type="text" name="soktext" size="50" value="<%=soktext%>">
<input type="submit" value="Sök" name="find">
</td>
</form>
</tr>
</table>
<%
sokText = request("soktext")
if sokText <> "" then
%>
<%
set con = server.createobject("ADODB.Connection")
con.open ="driver={Microsoft Access Driver (*.mdb)}; DBQ="& Server.MapPath("dbsok.mdb")
Set rs = Server.CreateObject("ADODB.Recordset")
set rs = con.execute("select count(*) from sok_tbl where ord1 like '%" & soktext & "%' ")
if not (rs.eof or rs.bof) then
response.write "antal poster:" & rs(0)
response.write " "
end if
rs.close
Const perSida = 10
If Request.QueryString("page") = "" then
page = 1
Else
page = Request.QueryString("page")
End If
rs.CursorLocation = 3
rs.CacheSize = perSida
'Set rs = Server.CreateObject("ADODB.Recordset")
SQL = "select * from sok_tbl where ord1 like '%" & soktext & "%' order by rubrik"
rs.Open SQL, Con, adOpenStatic, adLockOptimistic
If rs.EOF Then
response.write ("Inga träffar sök igen!")
else
rs.MoveFirst
rs.PageSize = perSida
TotalPages = rs.PageCount
rs.AbsolutePage = page
Count = 0
%>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td>
Sidor: <% = TotalPages %>
</td>
</tr>
<%end if%>
<%Do While Not rs.EOF And Count < rs.PageSize%>
<tr>
<td>
<% rakna = rakna + 1 %>
<%= rakna %>
"><% = rs("rubrik") %>
</td>
</tr>
<%
Count = Count + 1
rs.MoveNext
Loop
rs.Close
Set rs = nothing
con.Close
Set con = nothing
IF TotalPages > 1 Then%>
<tr>
<td>
<%
If TotalPages <> 1 Then
If (Int(page)) <> 1 Then
%>
« Bakåt
<%Else%>
« Bakåt |
<%End If
For Pages = 1 To TotalPages
If (Int(Pages)) = (Int(page)) Then%>
<%=Pages%>
<%Else%>
<%=Pages%>
<%
End If
Next
%>
<%End If
If (Int(page)) <> (Int(TotalPages)) Then%>
|
Framåt »
<%Else%>
| Framåt »
<%END IF%>
<%End If%>
<%END IF%>
</td>
</tr>
</table>Sv: Sökmotor-träffar på flera sidor
Oj, såg inte att det var löst, sorry ;)
/Peter