Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Kommunikation Website Suche -> MS Index Server

Empfohlene Antworten

Veröffentlicht

Hallo,

Da sich meine asp kentnisse gen 0 richten das Projekt doch ziemlich wichtig ist frage ich nun hier.

Erstmal der Link zum Tut:

Index-Server: Volltextsuche auf der Website (Gastbeitrag tecCHANNEL)

Was ich bisher getan habe:

1. Index Server läuft

2. Zunächst brauchen Sie einen Such-String. Dazu erstellen Sie ein HTML-Formular, das ein Textfeld mit dem Namen SearchString enthält.

Hier fangen die Probleme an. Ab hier bin ich dann auf hilfe angewiesen.

Grün = abgearbeitet

Rot = ausstehend

Zunächst brauchen Sie einen Such-String. Dazu erstellen Sie ein HTML-Formular, das ein Textfeld mit dem Namen SearchString enthält. Dieses wird an das Such-Script geschickt, wo der SearchString dann mit dem folgenden Statement ausgelesen wird:

SearchString = Request.Form('SearchString')

Mit dem Such-String können Sie die Suche ein wenig präzisieren. Als Erstes brauchen Sie dazu aber ein Objekt, das Sie zur Kommunikation mit dem Indexdienst verwenden. Das erzeugen Sie zunächst per CreateObject():

set Q = Server.CreateObject('ixsso.Query')

Danach legen Sie fest, was und wie gesucht werden soll. Am einfachsten wäre es dabei, dem Query den Such-String zuzuweisen: In diesem Fall würde der String in allen Dateien gesucht werden. Um die Suche jedoch etwas einzuschränken, können Sie das folgende Statement verwenden. Dabei werden nur HTML- und ASP-Seiten durchsucht - und von diesen auch nur der Inhalt. Gesucht wird dabei der in SearchString eingegebene Text:

Q.Query = '#filename = *.|(html|,htm|,asp|,aspx|) & ${contents} ' &

SearchString

Als Nächstes geben Sie an, wie das Sortieren der Ergebnisse erfolgen soll. Der Indexdienst kann nach einer ganzen Reihe von Bedingungen sortieren, am einfachsten ist es aber, wenn man den Page-Rank, den der Suchdienst selbst ermittelt hat, zum Sortieren verwendet:

Q.SortBy = 'rank[d]'

Zum SeitenanfangZum Seitenanfang

Ergebnismenge festlegen

Schließlich müssen Sie spezifizieren, was alles im Suchresultat enthalten sein soll. Der Indexdienst merkt sich eine recht große Anzahl von Informationen über jede einzelne Datei. Welche das im Einzelnen sind, können Sie im Ordner 'Eigenschaften' im Bereich der Kataloge in der Computerverwaltung nachsehen. Die meisten Informationen sind selbsterklärend: So lassen sich zum Beispiel der Titel eines Dokuments, seine Größe und sein Pfad ermitteln:

Q.Columns = 'DocTitle, vpath, path, filename, size, write, characterization'

Nun müssen Sie noch festlegen, in welchem Katalog die Suche stattfinden soll. Dabei geben Sie den Namen des Katalogs an, den Sie zuvor in der Computerverwaltung für den Webserver angelegt haben.

Q.Catalog = 'meinesite.de'

Damit ist die Suche vollständig definiert. Sie können sie nun anstoßen, indem Sie vom Query-Objekt ein RecordSet erstellen lassen:

set RS = Q.CreateRecordSet('nonsequential')

Zum SeitenanfangZum Seitenanfang

Resultat ausgeben

Über dieses Recordset iterieren Sie dann. Bei jedem Schritt erhalten Sie das jeweils nächste Ergebnis aus den Suchresultaten. Je nach Konfiguration Ihres Servers ist es dabei noch notwendig, Informationen über die Pfade der gefundenen Dateien in ein Format umzuwandeln, das für das Web geeignet ist: Von Haus aus liefert der Indexdienst nur lokale Pfade zu den gefundenen Dateien.

%

Do While Not RS.EOF

%

%if VarType(RS('DocTitle')) = 1 or RS('DocTitle') = '' then%

a href='%=RS('path')%'%= Server.HTMLEncode( RS('filename') )%/a

%else%

a href='%=htpath%'%= Server.HTMLEncode(RS('DocTitle'))%/a

%end if%

%if VarType(RS('characterization')) = 8 and RS('characterization') '' then%

%= Server.HTMLEncode(RS('characterization'))%

%end if%

%

RS.MoveNext

Loop

%

Bis hier benötige ich es datailierter.

Ich hoffe es findet sich jemand der sich damit mal eben auseinander setzt.

Der erste Step ist getan, habe mir den passenden (zumindest denk ich es) Code auf einer Website gesucht.

Entstanden ist daraus folgendes:



<form name="SearchString" action="test.asp" method="get">

Suche

<input type="text" name="user" />

<input type="submit" value="Submit" />

</form> 



nächster Schritt ist folgender.
Dieses wird an das Such-Script geschickt, wo der SearchString dann mit dem folgenden Statement ausgelesen wird: SearchString = Request.Form('SearchString')
Habe

SearchString = Request.Form('SearchString')

einfach mal direkt in die HTML Datei geschrieben, habe aber festgestellt das es anders funktionieren muss da nur der Text im Browser ausgegeben wird.

Bearbeitet von T.Jansen

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.