Peterchens Mondfahrt: Suchen nach Dateiinhalt

Hallo zusammen,

jeder kennt doch diese tolle Suchfunktion von Windoof "Suchen nach Datei die folgenden Text enthält:"

Gibts sowas auch als PHP-Lösung ?

Mein Problem ist, dass ich knapp 500 (!!!) HTML-Dokumente nach verschiedenen Strings durchsuchen muss/möchte/soll.
Der Besucher soll also tatsächlich nur "Otto" eingeben und es werden ihm alle Dateien mit dem String "Otto" oder "otto" geliefert.

Bevor ich jetzt alles wegschmeisse ... ist sowas mit PHP überhaupt möglich ???

Thnx für Info !

Peter

  1. jeder kennt doch diese tolle Suchfunktion von Windoof "Suchen nach Datei die folgenden Text enthält:"

    Gibts sowas auch als PHP-Lösung ?

    Mein Problem ist, dass ich knapp 500 (!!!) HTML-Dokumente nach verschiedenen Strings durchsuchen muss/möchte/soll.
    Der Besucher soll also tatsächlich nur "Otto" eingeben und es werden ihm alle Dateien mit dem String "Otto" oder "otto" geliefert.

    Bevor ich jetzt alles wegschmeisse ... ist sowas mit PHP überhaupt möglich ???

    Idealerweise macht man das mit einer Datenbank.
    Unperformante Alternative wäre, bei jeder (!) Suchanfrage mit readdir() durch den Verzeichnisbaum zu hangeln, jede Datei mit fopen() einzulesen und deren Inhalt mit strstr() o.ä. auf Vorkommen des Suchstrings zu prüfen.

    1. Hallo,

      Idealerweise macht man das mit einer Datenbank.

      ?? ich kann doch nicht JEDES Wort in der Datenbank hinterlegen !??

      Unperformante Alternative wäre, bei jeder (!) Suchanfrage mit readdir() durch den Verzeichnisbaum zu hangeln, jede Datei mit fopen() einzulesen und deren Inhalt mit strstr() o.ä. auf Vorkommen des Suchstrings zu prüfen.

      DAS hört sich für mich pfiffig an...
      Könntest du mir n Beispiel geben, aus dem ich dann den Rest zusammenbasteln kann ?
      Sooooo weit ist es mit meinen SQL/PHP-Kenntnissen nämlich leider nicht her :(

      Thnx

      Gruss

      Peter

      1. Nolimetongere,

        folgendes script dürfte dir jede datei mit ihrem namen und inhalt
        untereinander auflisten.. musst nur das passende verzeichnis angeben.
        danach kannst du ja mittels strstr http://de3.php.net/manual/de/function.strstr.php
        oder diverser string-funktionen den inhalt durchsuchen:::

        <?
        $folder = "VerzeichnisName";
        $verz=opendir ($folder);
        while ($file = readdir ($verz))
        {
           if($file!="." && $file!="..")
           {
            $pathComplete = $folder."\".$file;
            $datafile = fopen($pathComplete,"r");
            $data = fread($datafile, 1000000);
          echo "<b>".$file."</b><br>".$data."<p>";
           }
         }
        ?>

        Zebulon
        The Interim Polytoximonium

        --
        <img src="http://www.dmp-web.de/xCell/zebulon.jpg" border="0" alt="">
        [bitte bitte weg mich nicht -
        so lang ich träume gibts nur mich]
        1. Besten Dank !
          Jetzt geht's ans Testen ;-)

          Gruss

          Peter

          1. Hallo,

            den Test auf . und .. kannst du Dir schenken, das ist nämlich erst die halbe Miete. Es gibt diverse Node-Typen. Datei, Verzeichnis, Link, ...

            Frag lieber mit

            if (is_file($eintrag))
            {

            }

            Gruß

            Chris©