Wörter zählen & ausgeben

maxikey

Erfahrenes Mitglied
Heyhoo,
Ich muss leider nochmals eure Hilfe in Anspruch nehmen.
Ich will eine Menge Datei-Inhalte, von sehr sehr langen Dateien, in einer Datenbank per fopen öffnen und speichern und anschließend mit diesem Code ausgeben in welchen Dateien $WORD vorkommt. Die Namen der Dateien will ich sortiert nach Monaten ausgeben. Nur: Dieser Code funktioniert leider nicht!
PHP:
$WORD="ding";

$query = "SELECT * FROM tabelle WHERE Code LIKE '%$WORD%' ORDER BY MONTH DESC";

$result=mysql_query($query)or die(mysql_error());
$num = mysql_num_rows($result);
if ($num==0)
{

echo "NIX GEFUNDEN!";

}

while ($row=mysql_fetch_object($result))

{
echo $row->MONTH;
}
?>

Blöde Frage: soll ich das so machen oder aufgrund der Länge der Dateien, die ich öffne, lieber direkt im Code 'fopen' durchführen? Wenn ja: Wie gebe ich dann anschließend aus in welchen Dateien $WORD vorkam?

DANKE IM VORAUS!

MFG Maxi
 
Hast Du die Datei-Inhalte komplett in der Datenbank und zudem auch noch auf der Festplatte?

Also wenn Du mit fopen() auf der Platte gespeicherte Dateien durchforsten willst musst Du jede Datei oeffnen, bei Dateiinhalten in der Datenbank hast Du den Vorteil dass Dir MySQL bei der Suche ordentlich unter die Arme greifen kann. Und in diesem speziellen Fall duerfte wohl der Volltext-Index unglaublich hilfreich und performancefreundlich sein.
 
1. Sollten die Daten nicht in der Datenbank sein, sollte er ja "NIX GEFUNDEN!" ausgeben.
2. Das heißt du empfiehlst mir die sehr sehr langen Dateien in eine Datenbank zu schreiben? Wie könnte es denn aussehen, wenn fopen direkt im code ausgeführt wird?

MFG Maxi
 
Nein, im Grunde empfehle ich erstmal nicht diese sehr langen Daten in die Datenbank zu schreiben.
Es kann aber durchaus auch sein, dass dies Sinn macht. In Deinem Fall scheint es mir fast als koennte so ein Fall vorliegen.
MySQL ist durchaus in der Lage mit grossen Daten umzugehen. Die Datenbank dieses Forums ist ja auch "ein wenig" groesser als nur ein paar KB. ;)
Wenn Du die Daten oft brauchst, und vor allem oft nach bestimmten Schluesselworten durchforsten musst koennte ich mir vorstellen dass der Ansatz ueber die Speicherung in MySQL, zusammen mit dem dort verfuegbaren Volltext-Index, durchaus Sinn machen kann.

Ich hab selbst noch nicht vor einem solchen Problem gestanden, wuerde aber mal ein paar Tests laufen lassen und sehen was fuer Zeiten ich bekomme.

Von welcher Groessenordnung sprechen wir bei den Dateien? Und was fuer Dateien sind das? Einfach nur simpler Text?
 
Zurück