Indexierung.

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

  • Indexierung.

    Hallo!

    Ich habe ein kleines CMS für mich geschrieben. Mit TinyMCE erstelle ich die Inhalte (also als HTML).

    Nun würde ich gerne ein Index erstellen.

    Wie kann ich das anstellen?

    Wie lasse ich am besten die HTML-Tags aus? In der Datenbank gibt es < und auch &lt;.

    Wie kann ich deutsche Füllwörter von der Indexierung auslassen?
    z.B.
    ein, der, eine, eines
    usw. ?

    Den Index würde ich dann in eine Datenbank schreiben wollen.

    Vielen Dank für Anregungen!

    bofan
    Beachte: Dumm ist, wer Dummes tut.

  • #2
    Zitat von bofan Beitrag anzeigen
    Wie lasse ich am besten die HTML-Tags aus?
    strip_tags
    Zitat von bofan Beitrag anzeigen
    In der Datenbank gibt es ... und auch &lt;.
    str_replace
    Zitat von bofan Beitrag anzeigen
    Wie kann ich deutsche Füllwörter von der Indexierung auslassen?
    z.B.
    ein, der, eine, eines
    usw. ?
    Dito

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      okay. klar. das kling gut!

      Aber wie mache ich es

      wenn es z.B. heißt

      <a href='index.php' target='_blank'>Home</a>

      wenn ich jetzt nur Home haben will?
      Beachte: Dumm ist, wer Dummes tut.

      Kommentar


      • #4
        strip_tags

        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Vielen Dank. So dürfte das mit der Umsetzung klappen.

          eine Weitere Frage.

          Wie würdet ihr die "Ausnahmen" (z.B. ein, eine, eines, usw.) speichern?

          Als Liste in der MySQL DB? Ausgelesen als Array?
          Als txt-File? Ausgelesen als Array?
          1x täglich generiertes php-File? Da dann als Array?



          Wie würdet Ihr den Index in der Datenbank speichern?

          Index-File

          index-wort tabelle
          index-wort-seiten-verknüpung tabelle?

          sprich
          Seite-ID | Seite-Text


          Index-Wort-ID | Index-Wort


          Index-Wort-Seite-ID | Seite-ID | Index-Wort-ID



          Die Suche dann

          Select[*] FROM index-wort LEFT JOIN index-wort-seite ON index-wort-id = index-wort-id AS a LEFT JOIN seite-ID ON seite-id = seite-id AS B WHERE index-wort = 'suchbegriff' ?
          Beachte: Dumm ist, wer Dummes tut.

          Kommentar


          • #6
            Und eine Stoppwortliste hast Du schon?
            Diese hier wäre als Array:

            Stoppwortliste deutsch ? php bar

            Gibt aber wesentlich längere Listen.

            Es kommt ja auch darauf an, was Du damit vorhast. Ich hatte mal eine Liste für eine kleine Suche benötigt, wo man dann zwischen dem genauen Wortlaut usw. wählen konnte. Dafür hatte ich dann eine Stoppwortliste als datei.txt. Nur, die Stoppwörter sind ja gleich aus der Post rausgeflogen und nach denen wurde dann ja nicht mehr gesucht. Also, bevor die Suche begonnen hat, wurden die Stoppwörter in den Suchanfragen schon eliminiert.

            Wenn Du aber einen Index erstellen möchtest, dann würde sich wohl eher die Datenbank anbieten. Für meine kleine Suche hatte ich um die 770 Stoppwörter, falls ich mich nicht irre, rechne lieber mit mehr. Weiß nicht mehr, woher ich die hatte, weiß nur noch, dass ich die etwas einkürzte.
            Zuletzt geändert von Melewo; 26.06.2013, 20:58.

            Kommentar


            • #7
              Danke Indexierung klappt nun.

              Hast du vllt. auch eine Idee, ob ich pdf dateien oder doc dateien indexieren kann?

              Also ich hab n linux-server... (root)
              [Nur im Intranet ohne Bezug nach außen.]

              Mit ist klar, dass gescannte Dokumente in PDF-Dateien nicht indexiert werden können.
              Beachte: Dumm ist, wer Dummes tut.

              Kommentar


              • #8
                Zum Auslesen könntest du zum Beispiel FPDF mit FPDI nutzen. Bei Word sieht es da schon ein wenig schlechter aus, da das erstens nicht offen ist und zweitens auch noch verschiedene Formate vorliegen können.

                Peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Kommentar

                Lädt...
                X