[ASP] Zoeken in Index Server moet je AND gebruiken in query

Pagina: 1
Acties:

  • collin
  • Registratie: Februari 2000
  • Laatst online: 18-02 14:37

collin

Who da man !!

Topicstarter
Hoi, ik heb wat code gevonden om Microsoft Index Server te doorzoeken. Ik ben niet thuis in ASP, maar ik heb hem al redelijk weten aan te passen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Index Server Example Search Results Page</title>
</head>

<body>
<%
Dim sSearchString
Dim oQuery
Dim newPath

sSearchString = Request.Form("query")

Const SEARCH_CATALOG = "Data" 'remember to change this
%>
<%
Set oQuery = Server.CreateObject("IXSSO.Query")

If sSearchString = "" Then
    Response.Write "<center>Geen zoekciteria opgegeven.<br><br>"
    Response.Write "<a href='https://www.mijnsite.com/search'>Terug naar de zoekpagina</a></center>"
Else

oQuery.Catalog = SEARCH_CATALOG
oQuery.Query = "@all " & sSearchString & " AND NOT #path *_* AND NOT #path *downloads* AND NOT #path *images* AND NOT #filename *.class AND NOT #filename *.asa AND NOT #filename *.css AND NOT #filename *postinfo.html"
oQuery.MaxRecords = 200
oQuery.SortBy = "rank[d]"
oQuery.Columns = "DocAuthor, vpath, doctitle, FileName, Path, Write, Size, Rank, Create, Characterization, DocCategory"
Set oRS = oQuery.CreateRecordSet("nonsequential")
%>
<%

    If oRS.EOF Then
        Response.Write "<center>Geen zoekresultaten gevonden voor <i>" & sSearchString & "</i><br><br>"
        Response.Write "<a href='https://www.mijnsite.com/search'>Terug naar de zoekpagina</a></center>"
    Else

    Response.write "<form method='POST' action='SearchResults.asp' name='frmSearch'>"
    Response.write "    <center>"
    Response.write "Use the search, Luke!"
    Response.write "  <p><input type='text' maxlength='255' name='query' size='20' value> <input type='submit' value='Zoeken' name='B1'></center> </p>"
    Response.write "</form>"

    Response.write "<center><font face='Verdana, Arial, Helvetica, sans-serif'><table border bordercolor=#d4d0c8>"
    Response.write "<tr><td><b>Rank</b></td><td><b>Bestand</b></td><td><b>Laatste wijziging</b></td></tr>"

    Do While Not oRS.EOF

    newPath = oRS("Path")
    newPath = replace(newPath,"\\jupiter\data","data")
    newPath = replace(newPath,"\","/")

    Response.write "<tr><td>" & oRS("Rank") & "</td><td><a href ='" & newPath & "'>" & oRS("FileName")& "</a></td><td>" & oRS("Write") & "</td></tr>"
    Response.write "<tr><td></td><td colspan='2' width=700><font size='1'>" & oRS("Characterization") & "</font></td></tr>"

    oRS.MoveNext
    Loop

    Response.write "</font></table></center>"

    End If
End If
%>
<%
Set oRS = nothing
Set oQuery = nothing
%>
</body>
</html>

Mijn enige probleem is dat als je een document wil zoeken op twee keyword (die niet achter elkaar staan) bijv. "linux clamav" dat je dan als query op moet geven "linux AND clamav".

Ik vermoed dat dat in deze regel aangepast kan worden:
code:
1
oQuery.Query = "@all " & sSearchString & " AND NOT #path *_* AND NOT #path *downloads* AND

Maar ik kan daarover nergens iets vinden! Ik vindt veel info over voorbeeld sites die Index server kunnen doorzoeken, maar niet hoe je de query aan kan passen. Ik zou dus willen dat deze net als google werkt, zonder dat 'AND' gezeur :)

Mijn iRacing profiel


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Even Googlen leert me dat de Indexing Service die je hier gebruikt simpelweg gebruik maakt van de AND, OR, NOT, enz. keywords. Ik denk niet dat je daar omheen kan, dus als je zonder die keywords wil werken, dan zul je ofwel een eigen zoekfunctie moeten schrijven, ofwel je vervangt in je zoekquery alle spaties door de tekst ' AND '. Zelfde effect. ;)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • collin
  • Registratie: Februari 2000
  • Laatst online: 18-02 14:37

collin

Who da man !!

Topicstarter
Ah tnxs, ik heb nu een handige site gevonden voor queries in Index Server:

http://www.windowswebhost.com/ixqlang.htm

Echt een mooie optie in Windows dat Index Server!

Mijn iRacing profiel