alkativo: Suchmaschine für eigene Webseite

Hallo,

ich suche schon eine ganze weile ein PHP Script für die Suche auf der eigenen Webseite, das alle Seiten indiziert und in eine mySQL Datenbank schreibt. Ich habe bisher nur welche für brauchbar befunden, die alles in eine txt-Datei schreiben. Das könnte man natürlich umschreiben. Aber vielleicht kennt hier ja jemand eine gute ALternative.

Bis dann
al

  1. Hallo,

    [...]Aber vielleicht kennt hier ja jemand eine gute ALternative.

    vielleicht ist das eine:
    http://www.w3sitesearch.de?

    Gruß
    Reiner

    1. Hallo Rainer,

      nun die Suchmaschine installiert man ja auf dem Server. Der ist allerdings bei einen Provider und da glaube ich nicht, daß das so ohne weiteres geht. Ein Script wäre mir lieber, da ich das Providerunabhänig einsetzen kann.

      Bis dann
      al

      Hallo,

      [...]Aber vielleicht kennt hier ja jemand eine gute ALternative.

      vielleicht ist das eine:
      http://www.w3sitesearch.de?

      Gruß
      Reiner

      1. Hi,

        nun die Suchmaschine installiert man ja auf dem Server. Der ist allerdings bei einen Provider und da glaube ich nicht, daß das so ohne weiteres geht. Ein Script wäre mir lieber, da ich das Providerunabhänig einsetzen kann.

        lies mal was auf der Seite steht!

        Gruß
        R_e_iner

        1. Hi Reiner,

          leider ist das auch nicht so nach meinen Vorstellungen, da ich hier selber noch ne ganze Menge nachfeilen muß für spezielle Verlinkungen und Sonderfälle. Ich brauche schon ein Script vor Ort, das ich individuell erweitern kann. Naja am Ende muß man ja meistens alleine was schreiben.

          Bis dann
          al

  2. Hello,

    das Erstellen einer einfachen Suchmaschine steht mir noch bevor für eine Kundenseite. Allerdings hatte ich nicht erwatet, dass das besondere Schwierigkeiten geben würde.

    Ich habe alle Seiten in einem Menubaum strukturiert.
    Ich habe die Seiteninhalte getrennt vom allgemeinen Design vorliegen.
    dann muss ich dochn nur den gesamten Seitenbaum durchsuchen...

    - für jede Seite des Seitenbaumes
        Seite laden
        Tags entfernen (bzw. durch Leerzeichen erseetzen!)
        Seiteninhalt in einheitliche Schreibweise umwandeln
        - für jeden Suchbegriff
        in einheiltiche Schreibweise umwandeln
        nach Position in der Seite suchen
        Position in der Seite merken

    die Originalseite in eine Ergebnisseite umwandeln und für jede gefundene Position
           bis zum Ende des Suchbegriffs die Markirungen (<span ...>  </span>) einfügen.

    Seiten ausliefern oder auch nur die Links auf die Positionen oder auf die Seiten.

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
    1. Hallo Tom!

      Tags entfernen (bzw. durch Leerzeichen erseetzen!)

      Das in den Klammern Stehende würde ich n<b>ich</b>t tun.

      dedlfix

      1. Hello,

        Tags entfernen (bzw. durch Leerzeichen ersetzen!)

        Das in den Klammern Stehende würde ich n<b>ich</b>t tun.

        Das Problem ist aber, dass man dann die Position des gesuchten Begriffes in der nicht ent-tag-ten Seite auch nicht mehr wiederfinden kann.

        Dann muss man leider doch mit den sehr teuren regulären Ausdrucken arbeiten.
        Wenn man dann z.B. 700 Seiten eines Webauftrittes durchsuchen lassen soll, dauert das.

        Harzliche Grüße aus http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
        1. re

          Tags entfernen (bzw. durch Leerzeichen ersetzen!)

          Das in den Klammern Stehende würde ich n<b>ich</b>t tun.

          Das Problem ist aber, dass man dann die Position des gesuchten Begriffes in der nicht ent-tag-ten Seite auch nicht mehr wiederfinden kann.

          Gegen das Ent-tag-en habe ich ja nichts einzuwenden, nur sollten die Tags nicht durch Leerzeichen ersetzt werden, sonst reißt es Wörter auseinander.

          Aus meinem einen Beispielwort n<b>ich</b>t würden dann drei ("n", "ich" und "t") werden. [1]

          dedlfix

          [1] Nicht dass sich noch jemand darüber aufregt, dass n und t keine Wörter sind... :-)
          hier ein Beispiel mit "echten" Wörtern: Donau<b>dampf</b>schifffahrt

          1. Hello,

            Gegen das Ent-tag-en habe ich ja nichts einzuwenden, nur sollten die Tags nicht durch Leerzeichen ersetzt werden, sonst reißt es Wörter auseinander.

            Ich habe das sicherlich verstanden.
            Aber trotzdem verbleibt das Problem mit der Markierung der gesuchten Begriffe in der darzustellenden Seite. Wie würdest Du das denn am billigsten machen?

            Harzliche Grüße aus http://www.annerschbarrich.de

            Tom

            --
            Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
            Nur selber lernen macht schlau
            1. re

              Aber trotzdem verbleibt das Problem mit der Markierung der gesuchten Begriffe in der darzustellenden Seite. Wie würdest Du das denn am billigsten machen?

              Wahrscheinlich nach dem gleichen Prinzip wie du auch.
              Wie ich es heute machen würde, weiß ich (noch) nicht. (Eine Modernisierung des Projektes steht irgendwo auf meiner virtuellen TODO-Liste.) Vor einigen Jahren habe ich das mal so gelöst:

                
              if (isset($_GET['markiere'])) {  
               $farben = array('#00FFFF', '#FF00FF', '#99FF00', '#FFFF00', '#FF8080', '#C0C0C0', '#FFAC59', '#A6A6FF');  
               $markiereworte = array_unique(preg_split('/[\W_]/', strtoupper($_GET['markiere'])));  
               $text = '<p>Suchworte: '.implode(',', $markiereworte)."</p>\n".$text;  
               for ($i = 0; $i < count($markiereworte); $i++) {  
                $wort = $markiereworte[$i];  
                $farbe = $farben[$i % count($farben)];  
                $text = preg_replace("/((<[^>]*)|$wort)/ie", '"$2" == "$1" ? "$1" : "<span style=\"background-color:$farbe;border:solid 1px black;\">$1</span>"', $text);  
               } //foreach markiereworte  
              } //if markiere  
              echo $text."\n";  
              
              

              Der ist Text ist unübersichtlich? Ja, das mag sein. Der ist auch schon alt... :-)
              Was ich mir bei dem Pattern im preg_replace gedacht habe? Das weiß ich doch heute nicht mehr. Ein Kommentar ist nicht überliefert... :-)

              dedlfix