Textdatei durchsuchen [PHP]
-
Hallo!
In einer Textdatei werden aktuelle Nachrichten festgehalten (für einen Newsticker).
Die Datensätze in der Textdatei sehen wie folgt aus:
TitelNachrichtentextDatum, Uhrzeit
TitelNachrichtentextDatum, Uhrzeit
TitelNachrichtentextDatum, Uhrzeit
In meinen Newsticker zeige ich immer nur die 5 neuesten Nachrichten an. Die alten lässt das Script in der Textdatei verweihlen, sie werden also nicht gelöscht obwohl sie auch nicht angezeigt werden. Die Datensätze welche nicht angezeigt werden, sollen als Archiv dienen. Nun möchte ich dem Nutzer die Möglichkeit geben, das Archiv zu durchsuchen.
Ich habe schon etwas versucht, allerdings ist die Suche sehr ungenau!
Mein Konzept:
Datei in Array speichern (Jede Zeile bekommt einen eigenen Schlüssel, also mit file() )
Inhalt des Array's in String speichern. (Immer nur eine Zeile)
Den String in Titel Nachrichtentext und Uhrzeit unterteilen. (explode() )
Der Suchbegriff soll in einem Formular eingegeben werden können.
Mit preg_match_all("$suchbegriff", $zu_durchsuchender_string, $resultat) wird in einer foreach()-Schleife jeder Datensatz durchlaufen.
Wenn etwas gefunden wurde, dann mit similar_text() die Ergebnisse nach Genauigkeit anordnen und ausgeben.
Ich hoffe das war verständlich erklärt.
Bitte um Hilfe!MfG CSS
-
Und was genau ist jetzt dein Problem bzw. inwiefern ist dir die bisherige Suche zu ungenau?
-
Mahlzeit!
Wenn ich zum Beipiel folgenden Suchbegriff eingebe: Bush;
Der String enthält aber Georg W. Bush. So wird nichts gefunden.Nach welchem Konzept werden den andere Such-Formulare erstellt?
MfG CSS
-
EDIT: Wäre es den sinnvoll den String in einzelne Wörter einzuteilen, alle Verben oder Adjektive zu ignorieren (sowohl im zu dursuchenden String als auch in der Suchanfrage) und nur die Nomen zu vergleichen?
MFG CSS
-
CSS /login impossible schrieb:
Wenn ich zum Beipiel folgenden Suchbegriff eingebe: Bush;
Mit oder ohne Semikolon?
Ansonsten könntest du "i" als Modifier für dein Preg nehmen. Bzw. wäre stripos wohl besser geeignet, es sei denn, es soll noch erweitert (Suche nach ganzen Wörtern etc.) werden.
EDIT:
CSS/login impossible schrieb:
EDIT: Wäre es den sinnvoll den String in einzelne Wörter einzuteilen, alle Verben oder Adjektive zu ignorieren (sowohl im zu dursuchenden String als auch in der Suchanfrage) und nur die Nomen zu vergleichen?
IMHO ein definitives NEIN.
Vllt. könntest du mal deinen bisherigen Quellcode posten, damit man das mal nachvollziehen kann.