Bitte grundsätzlich systematisch vorgehen!
Auch in diesem Fall bitte systematisch vorgehen!
Die Ausgabe zeigt leere Listenpunkte, nur "..." oder ähnliches.
Häufige Ursache: unsauberer html Code der durchsuchten Seiten.
Versuch doch mal, den Code Deiner Seiten zu validieren. W3C Markup Validation Service zeigt Dir alle Fehler in Deinem Code.
Nein.
Das Script durchsucht den Quelltext der Seiten. Und wenn im Quelltext Datenbankaufrufe stehen, dann wird im besten Fall der Quelltext dieses Datenbankaufrufs gefunden.
Nein!
Es sei denn, Du hast lokal einen Server und PHP installiert. Aber dann wirst Du diese Frage vermutlich nicht stellen.
Nein.
Kurze Erklärung:
Die Standardinstallation von PHP arbeitet nicht mit pdf zusammen. Hierzu ist die Installation spezieller Bibliotheken erforderlich. Und da dies in der Regel nicht vorausgesetzt werden kann, wäre das Script nicht mehr portabel.
Als Faustregel:
Einige hundert Seiten werden in akzeptabler Zeit durchsucht. Auf einem schnellen Server dürfen es auch gerne mehr als 1000 Seiten sein.
Mittelwert für die Suchdauer: 100 bis 500 Seiten pro Sekunde
Zur Geschwindigkeit:
Das Script durchsucht die angegebenen Verzeichnisse live. Das hat den Vorteil, daß keine Indexierung erforderlich ist, und alle Änderungen an einzelnen Dateien jeweils sofort gefunden werden. Aber ab einer bestimmten Anzahl von Dateien dauert die Suche dadurch zwangsläufig länger, und kann die maximale Ausführungszeit, die der Server für Scripte erlaubt, überschreiten. (in der Regel sind das 30 oder 45 Sekunden, kann aber auch auf weniger eingestellt sein)
Um die Suche auf umfangreichen Sites zu beschleunigen, prinzipiell folgendermaßen vorgehen:
In der search_config.php:
$dat_type = "htm|html|php|txt";
Hier wirklich nur benötigte Dateitypen eingeben. txt z.B. ist in der Regel nicht erforderlich.
Die zu durchsuchenden Verzeichnisse explizit angeben, nach dem Muster $dirs = array('./','./subdir/','./subdir/subsub/');
und $alledirs = false; belassen ($alledirs = true; kann die Suche extrem ausbremsen)
Ein schneller Server ist natürlich hilfreich. Massenhoster wie z. B. 1&1 schneiden diesbezüglich in der Regel nicht gut, teilweise sogar katastrophal schlecht, ab. Die Folge ist dann ein Abbruch der Suche mit "Fehler 500 - Internal Server Error"
Das Anlegen der Logdatei searchlog.txt bereitet auf manchen Systemen Probleme.
Statt das Script abzubrechen, wird in diesem Fall lediglich eine Fehlermeldung ausgegeben.
Abhilfe in diesem Fall:
Diese Meldung erscheint, wenn PHP zwar installiert ist, aber in einer älteren Version.
Abhilfe schaffen kann in diesem Fall nur der Provider.
Genau so ist es!
Die Meldung erscheint auch dann, wenn versucht wird, das Script lokal, ohne lokalen Server laufen zu lassen, oder wenn versucht wird, das Script innerhalb einer html-Datei aufzurufen (es sei denn, der Server ist entsprechend konfiguriert, auch html-Dateien zu parsen).
Dieser Fehler kann auftreten, wenn folgende 3 Bedingungen erfüllt sind:
Abhilfe:
In die Seite, in der das Suchformular eingebaut ist, ganz oben folgende Zeile einfügen (wirklich GANZ oben, es darf nicht einmal ein Leerzeichen oder eine leere Zeile davor stehen!):
<?php ob_start(); ?>
Erklärung dieser Funktion im PHP Manual
Die search_config.php ist keine Anwendung, die im Browser angezeigt wird.
Sie muß vielmehr mit einem Text-Editor (z.B. Notepad) editiert werden.
Das Script muß sich selbst aufrufen.
Was heißt das?
Wenn Ihre Seite mit dem Suchformular z.B. suchscript.php heißt, dann muß die <form> Zeile, die das Script aufruft, folgendermaßen lauten:
<form id="search" method="get" action="suchscript.php">
... habe aber kaum PHP Kenntnisse.
Hier gibt es eine Schritt für Schritt Anleitung.
<body onload="irgendwas">?
<script src="searchhi.js" type="text/javascript"></script>stehen.
<script src="searchhi.js" type="text/javascript"></script>enthalten.
Die Ausgabe wird mit CSS formatiert. Ein Beispiel für die Formatierung ist in der Datei suchen.php enthalten.
Die folgenden Angaben sind für die Gestaltung der Listenausgabe zuständig:
p, li {
font-size: .8em;
line-height: 1.2em;
color: #111;
}
li {margin: .8em 2.5em;}
und für die Zeile mit der Pfadangabe und dem Änderungsdatum diese Zeile:
.mod {display: block; font-size: .8em;}
Lesen Sie bitte meine persönliche Meinung dazu in meinem Weblog. Vielleicht findet sich dort auch die Lösung für Ihren Wunsch.
Das Script wird ständig weiterentwickelt und um neue features erweitert. Siehe readme.txt
Ein update kann daher sinnvoll sein.
Vorgehensweise: