webForumDet fria alternativet

Räkning av antal hittade poster?

ASPur ASP

5 svar · 247 visningar · startad av Mattias

Medlem sedan mars 2000205 inlägg
Frågan#1

Hur räknar jag hur många poster som hittats (vid en sökning i min databas) och skriver ut det på sidan?

// Mattias

------------------

// Mattias

Medlem sedan juli 2000534 inlägg
#2

Så här:

strConnection = "DSN=myDSN"
strSQL = "SELECT * FROM table WHERE field = 'foo'"

Set rsFoo = Server.CreateObject("ADODB.Recordset")
rsFoo.cursorlocation = 3
rsFoo.cachesize = 5
rsFoo.Open strSQL, strConnection

Response.Write "Din sökning gav " & rsFoo.RecordCount & " träffar"

rsFoo.Close
Set rsFoo = Nothing

/Morph

Medlem sedan mars 2000205 inlägg
#3

Tack för svaret, morph, men innan jag hann läsa det så upptäckte jag själv ett sätt att räkna posterna. Tyvärr hamnar sökresultatet UNDER själva uppradningen, vilket inte är så snyggt. Jag bara undrar hur jag kan "förlytta" resultatet av sökningen så att den hamnar över uppradningen?

Här är koden. Ursäkta strukturen!:

<%
dim rsprod
dim leta

leta = "Select * from tblprod "
		
if request("txtprod") = "" then
%> 
Var vänlig skriv in ett sökord i textrutan.
<%else

leta = leta & "Where"
leta = leta & " Prodnamn Like '%" & Request("txtprod") & "%'"
			
'Sortera
leta = leta & " Order by prodnamn"
set rsprod = connect.execute(leta)
%>
<ul>
<%
'Listar 
count = 1

Do while not rsprod.eof
response.write "<li>" & "<b>" & count & "</b>" & "<a href=""produkt.asp?prodid=" & rsprod("prodid") & """>" & rsprod("Prodnamn") & "</a>"

rsprod.movenext
count = count + 1
loop
%>

<br><br>Din sökning resulterade i <%=count - 1 %> träffar.
<%
connect.close
set connect=nothing
end if	
%>

------------------

// Mattias

Medlem sedan dec. 19996 721 inlägg
#4

Det löser man genom att göra som morph beskrev, med recordcount.

Medlem sedan mars 2000205 inlägg
#5

Har testat att implementera Morphs kod på min sida, men jag får det inte att fungera. Får upp ett fel på följande rader:

rsprod.cursorlocation = 3
rsprod.cachesize = 5

Därför undrar jag vad ovanstående rader gör?

------------------

// Mattias

Medlem sedan maj 2000252 inlägg
#6

Så här har jag, bäste Hr. Nybörjare gjort

<%
SQLStmt = "SELECT * FROM tabell WHERE field LIKE '%" & Request.QueryString("search") & "%'"
Set RS = Databas.Execute(SQLStmt)
%>

<%
SQL = "SELECT COUNT(*) FROM tabell WHERE field LIKE '%" & Request.QueryString("search") & "%'"
Set RS2 = Databas.execute(SQL)
%>
<P>
<%
If RS.EOF Then 
Response.Write("Tyvärr, inga matchande inlägg...")
%>
<%
Else
%>
Du fick&#160;<B><%Response.Write RS2(0)%></B> träffar på din sökning: <B><%=Request.QueryString("search")%></B>

Jag vet ju inte om det är riktigt och rätt enligt de lärde, men för mig funkar det då.

131 ms totalt · 3 externa anrop · v20260731065814-full.25f56b17
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)