06. august 2003 - 16:21
#3
den skal ind her jeg kan ikke hel se hvor...
<%
' ADODB connection objektet
Set Conn = Server.CreateObject("ADODB.Connection")
' Husk at angive den rigtige sti til din database
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("database.mdb")
' Åben databaseforbindelsen
Conn.Open DSN
%>
<FONT SIZE="3" COLOR="#FF0000"><b>Resultat på din søgning..</FONT></B><BR>
<table border=0 cellspacing=0 bgcolor=#FFffff width=300>
<tr>
<td valign=top>
<%
' Henter værdien fra search.htm
strKeyword = Trim(Request.Form("search_keyword"))
strStilling = Trim(Request.Form("search_stilling"))
strPostNummer = Trim(Request.Form("search_postnr"))
strPostFunktion = Trim(Request.Form("search_Funktion"))
back = Request.QueryString("back")
if not back = "true" then
session("search_keyword") = strKeyword
session("search_stilling") = strStilling
session("search_postnr") = strPostNummer
session("search_Funktion") = strPostFunktion
end if
searchExpression = "false"
' Hvis der er skrevet i feltet
strKeyword = Replace(strKeyword,"'","''")
strStilling = Replace(strStilling,"'","''")
strPostNummer = Replace(strPostNummer,"'","''")
strPostFunktion = Replace(strPostFunktion,"'","''")
' Opbygger en dynamisk SQL streng
strSQL = "SELECT id, Navn2, m_navn, navn1, Adresse1, Post_Nr, Distrikt, Mobil, Telefon, Telefon_arb, Telefax, E_mail, foedt, Funktion, Fraktion, Arbejdsfunktion, M_funk_2 FROM medarb"
if strKeyword <> "" then
if searchExpression = "false" then
strSQL = strSQL & " WHERE "
end if
strSQL = strSQL & " ((id LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Navn2 LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (m_navn LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Navn1 LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Adresse1 LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Post_Nr LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Distrikt LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Mobil LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Telefon LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Telefon_arb LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Telefax LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (E_mail LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (foedt LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (Arbejdsfunktion LIKE '%" & strKeyword & "%') )"
searchExpression = "true"
end if
if strStilling <> "" then
if searchExpression = "false" then
strSQL = strSQL & " WHERE "
end if
if searchExpression = "true" then
strSQL = strSQL & " AND "
end if
strSQL = strSQL & " ( Arbejdsfunktion = '" & strStilling & "') "
searchExpression = "true"
end if
if strPostNummer <> "" then
if searchExpression = "false" then
strSQL = strSQL & " WHERE "
end if
if searchExpression = "true" then
strSQL = strSQL & " AND "
end if
strSQL = strSQL & " ( Post_nr = '" & strPostNummer & "') "
searchExpression = "true"
end if
if strPostFunktion <> "" then
if searchExpression = "false" then
strSQL = strSQL & " WHERE "
end if
if searchExpression = "true" then
strSQL = strSQL & " AND "
end if
strSQL = strSQL & " ( Funktion = '" & strPostFunktion & "') "
searchExpression = "true"
end if
strSQL = strSQL & " ORDER BY Navn2 "
'hvis vi er gået tilbage så vis den gamle søgning
if back = "true" then
strSQL = session("search_sql")
end if
session("search_sql") = strSQL
session("search_position") = 0
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("database.mdb")
Conn.Open DSN
' Skaber et recordset udfra SQL strengen
Set rs = Conn.Execute(strSQL)
' Hvis der er fundet poster på søgningen
If Not (rs.BOF Or rs.EOF) Then
MedarbejderPosition = 0
Do While Not rs.EOF
' Variabler deklæres
id = rs("id")
Navn = rs("navn2")
Efternavn = rs("navn1")
Adresse = rs("Adresse1")
' Generere et link, som er defineret i databasen
Link = "<a href='oretmedarb.asp?position="&MedarbejderPosition&"'>" & Navn & " " & Efternavn &"</a></b>"
' Udskriver linket som det blev genereret ovenfor + tilhørende kommentar
Response.Write "<li>" & Link & "</li>" & " "
MedarbejderPosition = MedarbejderPosition + 1
rs.MoveNext
Loop
Else
' Hvis der ikke er fundet poster på søgningen
Response.Write "<li>Sådan en har vi ikke ?"
End If
' Databaseforbindelsen lukkes
Conn.Close
Set Conn = Nothing %>
06. august 2003 - 18:19
#4
Du kan bruge rs.RecordCount til det. Det kræver en lille kode ændring som beskrevet neden for.
Prøv at rette denne linje:
' Skaber et recordset udfra SQL strengen
Set rs = Conn.Execute(strSQL)
Til disse linjer:
' Skaber et recordset udfra SQL strengen
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open strSQL, Conn, 1
Så der hvor du vil havde antallet stående skriver du denne linje, dog efter rs.Open linjen :) :
Response.Write rs.RecordCount & " personer fundet..."