Thorsten Meyer: Suche

Hallo,

ich habe eine Suche mit CGI programmier, die einfach HTML-Files durchgeht und die Ergenisse in einer neuen Seite ausgibt.

Was kann ich tun, damit wenn ich auf so ein ergebnis klicke ich auf die angegebene Seite genau an die Stelle komme wo der Begriff steht?

Hat irgendjemand eine Idee??

Thorsten

  1. ich habe eine Suche mit CGI programmier, die einfach HTML-Files durchgeht und die Ergenisse in einer neuen Seite ausgibt.

    Was kann ich tun, damit wenn ich auf so ein ergebnis klicke ich auf die angegebene Seite genau an die Stelle komme wo der Begriff steht?

    Hat irgendjemand eine Idee??

    Garnichts. Sicher anspringen (also in jedem Browser unter allen Umständen funktionierend) kannst Du nur über Anker im HTML-Code (<a name=..>). Du könntest also höchstens versuchen, den nächstgelegenen Anker zu identifizieren - stellt sich nur die Frage, ob das nicht eher verwirrend ist, da dieser Anker nicht unbedingt in unmittelbarer Nähe der Fundstelle liegt und außerdem etwas derartiges keine andere Suchfunktion/-maschine macht (einmal eingetretene Pfade bzw. Funktionsweisen sollte man nicht allzu weit verlassen).

    Wenn es Deine Seiten sind, solltest Du da vielleicht eher probieren, die Textlänge der Seiten zu verkleinern und/oder besser zu strukturieren (Absätze, Überschriften <h1> bis <h6>), damit der Suchende sich für die letzten paar Meter schneller zurecht findet.

    Gruß,
      soenk.e

  2. Hi Thorsten,

    Was kann ich tun, damit wenn ich auf so ein Ergebnis
    klicke ich auf die angegebene Seite genau an die
    Stelle komme wo der Begriff steht?

    »»

    Hat irgendjemand eine Idee??

    hm ... dazu müßte ich Deine Aufgabenstellung ein wenig
    "dehnen".

    In dem realen Dokument - unter dessen Original-URL -
    hast Du keine Chance: Anpositionieren kann der Browser
    nur targets, die es bereits gibt, und das reale Doku-
    ment ist im Allgemeinen nicht dynamisch änderbar.

    Aber Deine Suche gibt ja ein Ergebnisdokument aus.
    Und sie weiß, welches Dokument Du ansehen willst.

    Du kannst also den Link _statt_ auf das 'echte' Doku-
    ment auf einen von Dir zu schreibenden "Viewer" lenken,
    der
      1. den Inhalt des Original-Dokuments einliest und
      2. dynamisch umschreibt, so daß an der gewünschten
         Stelle ein Target ist.
    Dieser Viewer wird so verlinkt, daß _dieser_ URL das
    Target enthält, welches durch die Generierung der
    Dokument-Version Deines Viewers erst entstehen wird.
    Das sieht dann ungefähr so aus:
       http://aktuell.de.selfhtml.org/cgi-bin/serverid.pl?URL=http://www.google.de/#a1
    In diesem Fall hat "serverid.pl" die Funktion, welche
    in Deinem Szenario der "Viewer" übernehmen wird.
    Der Browser wird nun ein Dokument erhalten, dem seine
    dynamische Natur nicht mehr anzusehen ist, und der
    Link weist ihn an, zum Target zu springen ... bingo.

    Das Prinzip eines solchen Viewers ist weit verbreitet.
    Große Suchmaschinen realisieren auf diese Weise etwa
    die automatische Übersetzung von Trefferdokumenten.

    Das Einbringen eines Targets ist nur eine von vielen
    Möglichkeiten, die so ein Programm hätte.
    Du könntest beispielsweise _jedes_ Vorkommen eines
    Suchbegriffs in diesem Trefferdokument durch eine
    Kombination aus Target (Sprungziel der vorherigen
    Position) und Link (Sprung auf die nächste Position)
    ersetzen - dann kann sich der Besucher in Deinem
    Dokument von Treffer zu Treffer durchklicken (und
    auf den letzten Treffer setzt Du natürlich einen Link
    zurück zum ersten - Achtung, das klingt einfacher,
    als es tatsächlich ist).
    Ich habe das mal in ein Produkt unserer Firma eingebaut.

    Bedenke aber, daß Du dann _nicht_ den Original-URL in
    der Location-Zeile des Browser haben wirst ... es ist
    nicht zu vertuschen, daß Du eine eigene 'Version' des
    eigentlichen Dokument anbietest und nicht das Original.

    Viele Grüße
          Michael