16. februar 2004 - 01:00
Der er
3 kommentarer og
1 løsning
Angiv Søgeresultat fra database
Jeg har denne søge funktion som skal finde og kalde resulteter frem fra databasen. Problemet er at jeg skal have den til at søge fra et felt med html og så vise link til denne side ud fra der hvor den finde ord der passer med søgeordet. Der hvor der skal søge er i tabellen "contents" i feltet "c_text" og så udskrive et link.
Jeg har disse felter i databasen:
c_id = Som angiver sidens id
c_title = Som angiver kategorien
c_text = Som indeholder html tekst
Her er det jeg har lavet en til nu:
<% Response.Buffer = True %>
<html><head>
<title>Søgeresultat</title>
</head><body>
<%
strKeyword = Trim(Request.Form("Keyword"))
If Len(strKeyword) = 0 Then
Response.Clear
Response.Redirect("search.htm")
Else
strKeyword = Replace(strKeyword,"'","''")
End If
strSQL = "SELECT c_text FROM contents WHERE"
strSQL = strSQL & " (c_text LIKE '%" & strKeyword & "%')"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("db.mdb")
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN
Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
Response.Write "<p>Søgeresultat</p>"
Response.Write "<table border=1>"
Response.Write "<tr><th>Link</th></tr>"
Do While Not rs.EOF
Response.Write "<td>" & rs("<a title='"& m_name &"' href='?action="&saction&"&what="&m_id&"'>" & m_name & "</a>") & "</td>"
rs.MoveNext
Loop
Response.Write "</table>"
Else
Response.Write "<p>Der er ikke fundet noget på denne søgning</p>"
End If
myConn.Close
Set myConn = Nothing
%>
</body></html>
Håber der er en der hjælpe.
16. februar 2004 - 13:02
#2
er det noget i denne retning????
strSQL = "SELECT * FROM contents WHERE"
strSQL = strSQL & " (c_text LIKE '%" & strKeyword & "%')"
...
Do while not rs.eof
Response.Write "<tr><td><a href=""showPage.asp?PageID="& rs("c_id") & """>"& rs("c_title") &"</a></td></tr>"
...
16. februar 2004 - 21:40
#3
Hele siden ser sådanne ud og det er så den henter siderne, der er også en top menu:
<%
sqlstmt = "SELECT * from menus WHERE lng =" & lng
sqlstmt = sqlstmt & " AND m_id="&sAction
rs.open sqlstmt, conn,1 ,1
Do While Not rs.EOF
main_name=UCASE(rs("m_name"))
rs.MoveNext
loop
rs.Close
%>
<tr>
<%="<b>"& main_name &"</b>"%><br><br></td>
</tr>
<%
if sType=0 Then
sqlstmt = "SELECT * from submenus WHERE lng =" & lng
sqlstmt = sqlstmt & " AND m_related="&sAction
sqlstmt = sqlstmt & " ORDER by m_id"
rs.open sqlstmt, conn,1 ,1
If Not rs.EOF Then
Do While Not rs.EOF
m_id=rs("m_id")
m_name=UCASE(rs("m_name"))
m_action=rs("m_action")
Response.write "<a title='"& m_name &"' href='?action="&saction&"&what="&m_id&"'>" & m_name & "</a>"
if CDBL(m_id)=CDBL(sWhat) Then Response.write ""
rs.MoveNext
loop
rs.Close
Else
rs.close
sqlstmt = "SELECT * from contents WHERE lng =" & lng
sqlstmt = sqlstmt & " AND c_type=1"
sqlstmt = sqlstmt & " ORDER by c_date desc"
rs.open sqlstmt, conn,1 ,1
Do While Not rs.EOF
c_id=rs("c_id")
c_type=rs("c_type")
c_title=UCASE(rs("c_title"))
c_date=rs("c_date")
Response.write "<tr><td align='right' width='100%'> "
Response.write "<a title='"& c_title &"' href='?action="&saction&"&what="&c_id&"&type="&c_type&"'>" & c_title & "</a>"
if CINT(c_id)=cINT(sWhat) Then Response.write " bgcolor='#FFffff' "
rs.MoveNext
loop
rs.Close
End If
'.......................................................................................
Else ' show news
sqlstmt = "SELECT * from contents WHERE lng =" & lng
sqlstmt = sqlstmt & " AND c_type=1"
sqlstmt = sqlstmt & " ORDER by c_date desc"
rs.open sqlstmt, conn,1 ,1
Do While Not rs.EOF
c_id=rs("c_id")
c_type=rs("c_type")
c_title=UCASE(rs("c_title"))
c_date=rs("c_date")
Response.write "<tr><td align='right' width='100%'> "
Response.write "<a title='"& c_title &"' href='?action="&saction&"&what="&c_id&"&type="&c_type&"'>" & c_title & "</a>"
if CDBL(c_id)=CDBL(sWhat) Then Response.write ""
rs.MoveNext
loop
rs.Close
End If
%>
<%if Isempty(request.querystring("login"))=False Then%>
<td width="100%"><!--#INCLUDE FILE="login.asp"-->
<%End If%>
<%intImageNumber = Int((5 * Rnd) + 1)
RandomImg="gfx/p"&intImageNumber&".gif"
%>