Avatar billede c-lund Nybegynder
03. december 2002 - 13:54 Der er 20 kommentarer og
1 løsning

Hjælp til søge funktion

Halløjsa.
Jeg er i gang med at lave en søge funktion, og den virker nu også. Men mit problem er at jeg ikke ved hvordan jeg bestemmer hvor henne på søge siden mine søgeresutater skal komme frem, altså hvilken tabel.

Eks: http://www.frozen-design.dk/soeg/eks.htm
--------------------------------------------------------
selve søgensiden hedder index.htm,
scripet hedder search.asp
hvis det er nogen hjælp

Mvh.
Christian
Avatar billede hyperactive Nybegynder
03. december 2002 - 13:57 #1
Har du noget kode, du kan smide her?
Avatar billede loss Nybegynder
03. december 2002 - 14:00 #2
Lidt mere kode er nok en nødvendighed hvis du vil have hjælp..
Avatar billede c-lund Nybegynder
03. december 2002 - 14:00 #3
search.asp
-------------------------
<html><head>
<title></title>
</head>

<!-- #include file="index.htm"-->
<%
strKeyword = Trim(Request.Form("Keyword"))
If Len(strKeyword) = 0 Then
Response.Clear
Response.Redirect("search.asp")
Else
strKeyword = Replace(strKeyword,"'","''")
End If
strSQL = "SELECT ID, LinkName, Beskrivelse, LinkURL, ID, sogeord, min FROM links WHERE"
strSQL = strSQL & " (LinkName LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (sogeord LIKE '%" & strKeyword & "%')"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("database.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 "<center>"
Response.Write "<table border=""0"" cellspacing=""0"" width=""80%"" cellpadding=""3"" >"
Do While Not rs.EOF
Response.Write "<tr><td width=100% ><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >" & rs("min") & "<a href=redirect.asp?id="& rs("ID")&" TARGET=_blank>"& rs("LinkName") &"</A> - " & rs("Beskrivelse")&"<BR></FONT><FONT FACE=""Verdana, Times New Roman"" SIZE=""1"" ></FONT> <FONT face=""Verdana, Times New Roman"" Size=""1"" >" & "</font><BR><font face=""Verdana, Times New Roman"" Size=""1"" >Adresse : </font><font face=""Verdana, Times New Roman"" Size=""1"" >" & rs("LinkURL") &" - <a href=redirect.asp?id="& rs("ID")&" TARGET=_blank></a><BR><HR></td></tr>"
rs.MoveNext
Loop
Response.Write "</FONT></table>"
Else
Response.Write "<p><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >S&oslash;g fandt ikke noget til dig!"
End If
myConn.Close
Set myConn = Nothing
%>
</html>
Avatar billede loss Nybegynder
03. december 2002 - 14:02 #4
der hvor denner sætning er placeret bliver dine søge resultater skrevet ud

Do While Not rs.EOF
Response.Write "<tr><td width=100% ><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >" & rs("min") & "<a href=redirect.asp?id="& rs("ID")&" TARGET=_blank>"& rs("LinkName") &"</A> - " & rs("Beskrivelse")&"<BR></FONT><FONT FACE=""Verdana, Times New Roman"" SIZE=""1"" ></FONT> <FONT face=""Verdana, Times New Roman"" Size=""1"" >" & "</font><BR><font face=""Verdana, Times New Roman"" Size=""1"" >Adresse : </font><font face=""Verdana, Times New Roman"" Size=""1"" >" & rs("LinkURL") &" - <a href=redirect.asp?id="& rs("ID")&" TARGET=_blank></a><BR><HR></td></tr>"
rs.MoveNext
Loop
Avatar billede hyperactive Nybegynder
03. december 2002 - 14:03 #5
Vil du gerne have vist resultaterne på din index.htm side??? Det kan du ikke, html filer er ikke dynamiske.... Du er derfor nødt til at lave en asp side til søgeresultatet
Avatar billede loss Nybegynder
03. december 2002 - 14:03 #6
og placere du den et andet sted skal du nok lige have det her med

If Not (rs.BOF Or rs.EOF) Then
Response.Write "<center>"
Response.Write "<table border=""0"" cellspacing=""0"" width=""80%"" cellpadding=""3"" >"
Do While Not rs.EOF
Response.Write "<tr><td width=100% ><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >" & rs("min") & "<a href=redirect.asp?id="& rs("ID")&" TARGET=_blank>"& rs("LinkName") &"</A> - " & rs("Beskrivelse")&"<BR></FONT><FONT FACE=""Verdana, Times New Roman"" SIZE=""1"" ></FONT> <FONT face=""Verdana, Times New Roman"" Size=""1"" >" & "</font><BR><font face=""Verdana, Times New Roman"" Size=""1"" >Adresse : </font><font face=""Verdana, Times New Roman"" Size=""1"" >" & rs("LinkURL") &" - <a href=redirect.asp?id="& rs("ID")&" TARGET=_blank></a><BR><HR></td></tr>"
rs.MoveNext
Loop
Response.Write "</FONT></table>"
Else
Response.Write "<p><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >S&oslash;g fandt ikke noget til dig!"
End If
Avatar billede c-lund Nybegynder
03. december 2002 - 14:09 #7
når jeg gør det, for jeg denne fejlmeddellese
Et objekt er obligatorisk: ''
/index.htm, line 74
Avatar billede ast Nybegynder
03. december 2002 - 14:10 #8
Hvis du blvier træt af din egen søgefunktion, så kan du altdi hente en færdig på nedenstående link. Den fungerer ganske fremragende, og er helt gratis.

http://www.webwizguide.info/
Avatar billede c-lund Nybegynder
03. december 2002 - 14:13 #9
det er ikke søgefunktionen der er problemet
Avatar billede ast Nybegynder
03. december 2002 - 14:15 #10
prøv den alligevel :)
Avatar billede c-lund Nybegynder
03. december 2002 - 14:24 #11
når jeg gør det, for jeg denne fejlmeddellese
Et objekt er obligatorisk: ''
/index.htm, line 74
Avatar billede loss Nybegynder
03. december 2002 - 15:14 #12
det er fordi det SKAL være en ASP fil.... som hyper skrev tidligere
Avatar billede loss Nybegynder
03. december 2002 - 15:17 #13
og hele search scriptet skal ligge i den fil som det skal vises fra...

hvis du fx lavet index.htm om til index.asp. .så kan det lade sig gøre..

Du ligger det her styk af koden i toppen af filen.....
<%
strKeyword = Trim(Request.Form("Keyword"))
If Len(strKeyword) = 0 Then
Response.Clear
Response.Redirect("search.asp")
Else
strKeyword = Replace(strKeyword,"'","''")
End If
strSQL = "SELECT ID, LinkName, Beskrivelse, LinkURL, ID, sogeord, min FROM links WHERE"
strSQL = strSQL & " (LinkName LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (sogeord LIKE '%" & strKeyword & "%')"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("database.mdb")
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN
Set rs = myConn.Execute(strSQL)

%>

og det her styk kode, hvor du gerne vil have resultatet fremvist

<%
If Not (rs.BOF Or rs.EOF) Then
Response.Write "<center>"
Response.Write "<table border=""0"" cellspacing=""0"" width=""80%"" cellpadding=""3"" >"
Do While Not rs.EOF
Response.Write "<tr><td width=100% ><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >" & rs("min") & "<a href=redirect.asp?id="& rs("ID")&" TARGET=_blank>"& rs("LinkName") &"</A> - " & rs("Beskrivelse")&"<BR></FONT><FONT FACE=""Verdana, Times New Roman"" SIZE=""1"" ></FONT> <FONT face=""Verdana, Times New Roman"" Size=""1"" >" & "</font><BR><font face=""Verdana, Times New Roman"" Size=""1"" >Adresse : </font><font face=""Verdana, Times New Roman"" Size=""1"" >" & rs("LinkURL") &" - <a href=redirect.asp?id="& rs("ID")&" TARGET=_blank></a><BR><HR></td></tr>"
rs.MoveNext
Loop
Response.Write "</FONT></table>"
Else
Response.Write "<p><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >S&oslash;g fandt ikke noget til dig!"
End If
myConn.Close
Set myConn = Nothing
%>

// LOSS
Avatar billede burningice Nybegynder
03. december 2002 - 15:53 #14
hyperactive.dk>> man kan sagtens lave en scriptmapping der gør at htm-filer bliver fortolket af iis på samme måde som en asp fil ;)
Avatar billede c-lund Nybegynder
03. december 2002 - 16:03 #15
det vil sige at jeg overhoved ikke skal bruge den fil der heder search.asp
Avatar billede c-lund Nybegynder
03. december 2002 - 16:04 #16
Jeg er ikke den vildste haj til det der asp, for det er ret nyt for mig
Avatar billede loss Nybegynder
03. december 2002 - 16:52 #17
Nej du skal faktisk ikke bruge filen. Men det er nok en god ide at adskille din index fil med din søgefil..

så hvis du bruger search.asp til at vise dine søgeresultater skal du bare bygge den på den måde du vil have dine resultater vist.. og så placere resultatet, hvor du vil have det...

Prøv vis mig HTML koden, til der hvor du vil have skrevet søgeresultatet ud, så skal jeg prøve at sætte det ind
Avatar billede c-lund Nybegynder
03. december 2002 - 17:03 #18
<html>

<head>


<title>Blase --- Search engine</title>
</head>

<body bgcolor="#536E84" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">


<center>
<table border="0" width="*" cellspacing="0" cellpadding="0" height="80">
  <tr>
    <td width="762" height="65" colspan="7" valign="bottom"><img border="0" src="gif/logo.gif">
    </td>
  </tr>
  <tr>
    <td width="762" height="28" colspan="7" valign="bottom">
     
      <table border="0" width="612" cellspacing="0" cellpadding="0" height="42">
        <tr>
          <td width="148" height="42"></td>
          <td width="450" background="gif/top-kant-top.gif" height="42">
            <table border="0" width="425" cellspacing="0" cellpadding="0" height="15">
              <tr>
                <td width="423" height="15" rowspan="4" colspan="6">

<form action="index.asp" method="POST">

<p align="center">

<input type="text" name="keyword" size="25" style="font-family: Verdana; font-size: 8 pt; color: #FFFFFF; background-color: #397BA5; border: 1 solid #25618F" value="Indtast søgeord">
<input type="submit" name="Action" value="Søg" style="background-color: #397BA5; font-size: 10 px; font-family: Verdana; color: #FFFFFF; border: 1 solid #25618F">
</form>




</td>
              </tr>
            </table>
          </td>
          <td width="12" height="42"></td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td width="147" height="29">&nbsp;</td>
    <td width="17" height="25" background="gif/top-kant-bund.gif">&nbsp;</td>
    <td width="29" height="29"></td>
    <td width="30" height="29" bgcolor="#536E84">&nbsp;</td>
    <td width="472" height="2" bgcolor="#536E84" rowspan="2" valign="top">
      <table border="0" width="100%" bgcolor="#DBE4EA" cellspacing="0" cellpadding="0" height="533">
        <tr>
          <td width="100%" height="29" bgcolor="#536E84">&nbsp;</td>
        </tr>
        <tr>
          <td width="100%" height="504">





her skal søge resultaterne vises






</td>
        </tr>
      </table>
    </td>
    <td width="181" height="2" rowspan="2" valign="top">
      <table border="0" width="210" background="gif/menu-kant-højre.gif" cellspacing="0" cellpadding="0" height="533">
        <tr>
          <td width="100%" height="533">&nbsp;</td>
        </tr>
      </table>
    </td>
    <td width="2" height="2" rowspan="2">
    </td>
  </tr>
  <tr>
    <td width="174" height="387" colspan="4" valign="top" align="left">
</center>
    <table border="0" width="226" height="504" cellspacing="0" cellpadding="0" background="gif/menu-kant-højre1.gif">
      <tr>
        <td width="74" height="498" align="left" valign="top">
<center>
</center>
          &nbsp;</td>
        <td width="142" height="498" align="left" valign="top">
    <form method="POST" action="--WEBBOT-SELF--">
      <!--webbot bot="SaveResults"
      U-File="C:\Inetpub\wwwroot\_private\form_results.txt" S-Format="TEXT/CSV"
      S-Label-Fields="TRUE" -->
      <p align="left">&nbsp;<br>
      <br>
      &nbsp;<input type="text" name="T1" size="12" style="background-color: #25618F; font-family: Verdana; font-size: 8 pt; color: #FFFFFF; border: 1 solid #2997EC" value="Brugernavn"><br>
      &nbsp;<input type="text" name="T2" size="12" style="background-color: #25618F; font-family: Verdana; font-size: 8 pt; color: #FFFFFF; border: 1 solid #2997EC" value="Password"><br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" value="Login" name="B1" style="background-color: #25618F; font-size: 8 pt; font-family: Verdana; color: #FFFFFF; border: 1 solid #2997EC"></p>
    </form>
    <font face="Verdana" size="1" color="#FFFFFF"><a href="#top">Opret bruger
    profil</a></font>
          <p>&nbsp;</p>
          <p>&nbsp;</td>
      </tr>
    </table>
  </td>
  </tr>
<center>
</table>

</center>

</body>

</html>
Avatar billede loss Nybegynder
03. december 2002 - 17:19 #19
Tag denne kode.. kald filen for det samme som du bruger i din form action når du kalder søgningen.. (search.asp)..

<html>

<head>


<title>Blase --- Search engine</title>
</head>
<%
strKeyword = Trim(Request.Form("Keyword"))
If Len(strKeyword) = 0 Then
Response.Clear
Response.Redirect("search.asp")
Else
strKeyword = Replace(strKeyword,"'","''")
End If
strSQL = "SELECT ID, LinkName, Beskrivelse, LinkURL, ID, sogeord, min FROM links WHERE"
strSQL = strSQL & " (LinkName LIKE '%" & strKeyword & "%')"
strSQL = strSQL & " OR (sogeord LIKE '%" & strKeyword & "%')"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("database.mdb")
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open strDSN
Set rs = myConn.Execute(strSQL)

%>
<body bgcolor="#536E84" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF">


<center>
<table border="0" width="*" cellspacing="0" cellpadding="0" height="80">
  <tr>
    <td width="762" height="65" colspan="7" valign="bottom"><img border="0" src="gif/logo.gif">
    </td>
  </tr>
  <tr>
    <td width="762" height="28" colspan="7" valign="bottom">
     
      <table border="0" width="612" cellspacing="0" cellpadding="0" height="42">
        <tr>
          <td width="148" height="42"></td>
          <td width="450" background="gif/top-kant-top.gif" height="42">
            <table border="0" width="425" cellspacing="0" cellpadding="0" height="15">
              <tr>
                <td width="423" height="15" rowspan="4" colspan="6">

<form action="index.asp" method="POST">

<p align="center">

<input type="text" name="keyword" size="25" style="font-family: Verdana; font-size: 8 pt; color: #FFFFFF; background-color: #397BA5; border: 1 solid #25618F" value="Indtast søgeord">
<input type="submit" name="Action" value="Søg" style="background-color: #397BA5; font-size: 10 px; font-family: Verdana; color: #FFFFFF; border: 1 solid #25618F">
</form>




</td>
              </tr>
            </table>
          </td>
          <td width="12" height="42"></td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td width="147" height="29">&nbsp;</td>
    <td width="17" height="25" background="gif/top-kant-bund.gif">&nbsp;</td>
    <td width="29" height="29"></td>
    <td width="30" height="29" bgcolor="#536E84">&nbsp;</td>
    <td width="472" height="2" bgcolor="#536E84" rowspan="2" valign="top">
      <table border="0" width="100%" bgcolor="#DBE4EA" cellspacing="0" cellpadding="0" height="533">
        <tr>
          <td width="100%" height="29" bgcolor="#536E84">&nbsp;</td>
        </tr>
        <tr>
          <td width="100%" height="504">





<%
If Not (rs.BOF Or rs.EOF) Then
Response.Write "<table border=""0"" cellspacing=""0"" width=""80%"" cellpadding=""3"" >"
Do While Not rs.EOF
Response.Write "<tr><td width=100% ><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >" & rs("min") & "<a href=redirect.asp?id="& rs("ID")&" TARGET=_blank>"& rs("LinkName") &"</A> - " & rs("Beskrivelse")&"<BR></FONT><FONT FACE=""Verdana, Times New Roman"" SIZE=""1"" ></FONT> <FONT face=""Verdana, Times New Roman"" Size=""1"" >" & "</font><BR><font face=""Verdana, Times New Roman"" Size=""1"" >Adresse : </font><font face=""Verdana, Times New Roman"" Size=""1"" >" & rs("LinkURL") &" - <a href=redirect.asp?id="& rs("ID")&" TARGET=_blank></a><BR><HR></td></tr>"
rs.MoveNext
Loop
Response.Write "</FONT></table>"
Else
Response.Write "<p><FONT FACE=""Verdana, Times New Roman"" SIZE=""2"" >S&oslash;g fandt ikke noget til dig!</p>"
End If
myConn.Close
Set myConn = Nothing
%>






</td>
        </tr>
      </table>
    </td>
    <td width="181" height="2" rowspan="2" valign="top">
      <table border="0" width="210" background="gif/menu-kant-højre.gif" cellspacing="0" cellpadding="0" height="533">
        <tr>
          <td width="100%" height="533">&nbsp;</td>
        </tr>
      </table>
    </td>
    <td width="2" height="2" rowspan="2">
    </td>
  </tr>
  <tr>
    <td width="174" height="387" colspan="4" valign="top" align="left">
</center>
    <table border="0" width="226" height="504" cellspacing="0" cellpadding="0" background="gif/menu-kant-højre1.gif">
      <tr>
        <td width="74" height="498" align="left" valign="top">
<center>
</center>
          &nbsp;</td>
        <td width="142" height="498" align="left" valign="top">
    <form method="POST" action="--WEBBOT-SELF--">
      <!--webbot bot="SaveResults"
      U-File="C:\Inetpub\wwwroot\_private\form_results.txt" S-Format="TEXT/CSV"
      S-Label-Fields="TRUE" -->
      <p align="left">&nbsp;<br>
      <br>
      &nbsp;<input type="text" name="T1" size="12" style="background-color: #25618F; font-family: Verdana; font-size: 8 pt; color: #FFFFFF; border: 1 solid #2997EC" value="Brugernavn"><br>
      &nbsp;<input type="text" name="T2" size="12" style="background-color: #25618F; font-family: Verdana; font-size: 8 pt; color: #FFFFFF; border: 1 solid #2997EC" value="Password"><br>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" value="Login" name="B1" style="background-color: #25618F; font-size: 8 pt; font-family: Verdana; color: #FFFFFF; border: 1 solid #2997EC"></p>
    </form>
    <font face="Verdana" size="1" color="#FFFFFF"><a href="#top">Opret bruger
    profil</a></font>
          <p>&nbsp;</p>
          <p>&nbsp;</td>
      </tr>
    </table>
  </td>
  </tr>
<center>
</table>

</center>

</body>

</html>

Så skulle det gerne virke.. sig til hvis den melder fejl
Avatar billede c-lund Nybegynder
03. december 2002 - 19:53 #20
Response.Redirect("search.asp")

hvad skal der stå her. For hvis search.asp ikke skal bruges mere, så er det jo ikke det der skal stå, og hvis jeg skriver index.asp. sker der ikke noget. andet en den bliver ved med at hente sig selv frem igen og igen
Avatar billede c-lund Nybegynder
03. december 2002 - 20:47 #21
Halløjsa Loss, nu virker det, jeg ved ikke hvad jeg havde gjort galt de andre gange. men tak for hjælpen
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