Wie lässt sich herausfinden..

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie lässt sich herausfinden..

    Hey Leute!

    Brauch mal eben Hilfe von Euch! Und zwar geht es um eine Funktion wie die großen Suchmaschinen sie auch haben:

    Ich möchte einen Text nach einem Keyword durchsuchen. Anschließend möchte ich einen Ausschnitt aus dem Text mit einer bestimmten Länge (z.B. 200 Zeichen) aus dem Text ausgeben, und zwar den wo das Keyword mit drinsteckt. Dieses sollte auch Fettgedruckt sein.

    Sprich wenn der Text z.B.:

    Das ist meine Homepage und ich finde sie sehr schön.

    Lautet und jemand nach dem Begriff "Homepage" sucht dann soll die Ausgabe z.B. so aussehen:

    ... ist meine Homepage und ich ...

    Sowas ließe sich eigentlich mit substr machen, aber wie krieg ich raus an welcher Stelle vom Text das Keyword steckt!? Und was mach ich wenn ich mehrere Keywords habe die ziemlich weit entfernt voneinander sind!? Jemand ne Idee??

    Danke!

  • #2
    MoinMoin

    Nimm mal diesen Link:
    http://www.google.de/search?hl=de&q=...t+script&meta=

    Dann siehst du beim ersten Ergebnis das:

    $Ergebnis = "Das funktioniert z.B. mit ereg_replace, besser noch mit eregi_replace. Auf diese Weise werden zwar auch Teile aus einzelnen Wörtern, die den Suchbegriff enthalten fett angezeigt, aber es soll ja auch nur eine Anregung sein.";
    $suchbegriff = "eregi_replace";
    echo eregi_replace( $suchbegriff, "<b>$suchbegriff</b>", $Ergebnis );

    Damit kannst du schon mal den Begriff fett darstellen.

    VORHER:

    Jetzt musst du vorher nur noch in der DB nach Deinem Suchbegriff vergleichen (like = %search%).
    Bei einem Ergebnis gehst du ein paar Zeichen oder Wörter richtig Anfang des Strings.
    Und dann zählst du halt einfach deine Zeichen / Wörter zum Ende des String.
    Fertig!

    "Befehl zum zählen der Wörter weiss ich jetzt nicht - meine aber, dass es das bei PHP gibt."

    Das ist jetzt eine Vogehensweise bei einem Suchbegriff!

    Bei mehreren musst du schon ein Array verwenden.

    Hoffe ich konnte dir ein wenig helfen - Aber die Profis sind ja auch noch da!

    Webbi

    EDIT:

    Vorher vielleicht noch alle HTM und PHP - TAGS entfernen!

    $Ergebnis = strip_tags($Ergebnis);


    Zuletzt geändert von Webbi; 07.01.2005, 06:23.
    >>>> Erst denken, dann suchen, dann fragen <<<<

    Kommentar


    • #3
      vielleicht kann dir ja mein codeschnipsel zu dem thema ein paar anregungen geben: http://www.php-resource.de/forum/sho...threadid=43835
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        @wahsaga: Genau sowas habe ich gesucht. Danke Dir!

        Kommentar

        Lädt...
        X