Suchmaschine für eigene Webseite
alkativo
- php
Hallo,
ich suche schon eine ganze weile ein PHP Script für die Suche auf der eigenen Webseite, das alle Seiten indiziert und in eine mySQL Datenbank schreibt. Ich habe bisher nur welche für brauchbar befunden, die alles in eine txt-Datei schreiben. Das könnte man natürlich umschreiben. Aber vielleicht kennt hier ja jemand eine gute ALternative.
Bis dann
al
Hallo,
[...]Aber vielleicht kennt hier ja jemand eine gute ALternative.
vielleicht ist das eine:
http://www.w3sitesearch.de?
Gruß
Reiner
Hallo Rainer,
nun die Suchmaschine installiert man ja auf dem Server. Der ist allerdings bei einen Provider und da glaube ich nicht, daß das so ohne weiteres geht. Ein Script wäre mir lieber, da ich das Providerunabhänig einsetzen kann.
Bis dann
al
Hallo,
[...]Aber vielleicht kennt hier ja jemand eine gute ALternative.
vielleicht ist das eine:
http://www.w3sitesearch.de?Gruß
Reiner
Hi,
nun die Suchmaschine installiert man ja auf dem Server. Der ist allerdings bei einen Provider und da glaube ich nicht, daß das so ohne weiteres geht. Ein Script wäre mir lieber, da ich das Providerunabhänig einsetzen kann.
lies mal was auf der Seite steht!
Gruß
R_e_iner
Hi Reiner,
leider ist das auch nicht so nach meinen Vorstellungen, da ich hier selber noch ne ganze Menge nachfeilen muß für spezielle Verlinkungen und Sonderfälle. Ich brauche schon ein Script vor Ort, das ich individuell erweitern kann. Naja am Ende muß man ja meistens alleine was schreiben.
Bis dann
al
Hello,
das Erstellen einer einfachen Suchmaschine steht mir noch bevor für eine Kundenseite. Allerdings hatte ich nicht erwatet, dass das besondere Schwierigkeiten geben würde.
Ich habe alle Seiten in einem Menubaum strukturiert.
Ich habe die Seiteninhalte getrennt vom allgemeinen Design vorliegen.
dann muss ich dochn nur den gesamten Seitenbaum durchsuchen...
- für jede Seite des Seitenbaumes
Seite laden
Tags entfernen (bzw. durch Leerzeichen erseetzen!)
Seiteninhalt in einheitliche Schreibweise umwandeln
- für jeden Suchbegriff
in einheiltiche Schreibweise umwandeln
nach Position in der Seite suchen
Position in der Seite merken
die Originalseite in eine Ergebnisseite umwandeln und für jede gefundene Position
bis zum Ende des Suchbegriffs die Markirungen (<span ...> </span>) einfügen.
Seiten ausliefern oder auch nur die Links auf die Positionen oder auf die Seiten.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Hallo Tom!
Tags entfernen (bzw. durch Leerzeichen erseetzen!)
Das in den Klammern Stehende würde ich n<b>ich</b>t tun.
dedlfix
Hello,
Tags entfernen (bzw. durch Leerzeichen ersetzen!)
Das in den Klammern Stehende würde ich n<b>ich</b>t tun.
Das Problem ist aber, dass man dann die Position des gesuchten Begriffes in der nicht ent-tag-ten Seite auch nicht mehr wiederfinden kann.
Dann muss man leider doch mit den sehr teuren regulären Ausdrucken arbeiten.
Wenn man dann z.B. 700 Seiten eines Webauftrittes durchsuchen lassen soll, dauert das.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
re
Tags entfernen (bzw. durch Leerzeichen ersetzen!)
Das in den Klammern Stehende würde ich n<b>ich</b>t tun.
Das Problem ist aber, dass man dann die Position des gesuchten Begriffes in der nicht ent-tag-ten Seite auch nicht mehr wiederfinden kann.
Gegen das Ent-tag-en habe ich ja nichts einzuwenden, nur sollten die Tags nicht durch Leerzeichen ersetzt werden, sonst reißt es Wörter auseinander.
Aus meinem einen Beispielwort n<b>ich</b>t würden dann drei ("n", "ich" und "t") werden. [1]
dedlfix
[1] Nicht dass sich noch jemand darüber aufregt, dass n und t keine Wörter sind... :-)
hier ein Beispiel mit "echten" Wörtern: Donau<b>dampf</b>schifffahrt
Hello,
Gegen das Ent-tag-en habe ich ja nichts einzuwenden, nur sollten die Tags nicht durch Leerzeichen ersetzt werden, sonst reißt es Wörter auseinander.
Ich habe das sicherlich verstanden.
Aber trotzdem verbleibt das Problem mit der Markierung der gesuchten Begriffe in der darzustellenden Seite. Wie würdest Du das denn am billigsten machen?
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
re
Aber trotzdem verbleibt das Problem mit der Markierung der gesuchten Begriffe in der darzustellenden Seite. Wie würdest Du das denn am billigsten machen?
Wahrscheinlich nach dem gleichen Prinzip wie du auch.
Wie ich es heute machen würde, weiß ich (noch) nicht. (Eine Modernisierung des Projektes steht irgendwo auf meiner virtuellen TODO-Liste.) Vor einigen Jahren habe ich das mal so gelöst:
if (isset($_GET['markiere'])) {
$farben = array('#00FFFF', '#FF00FF', '#99FF00', '#FFFF00', '#FF8080', '#C0C0C0', '#FFAC59', '#A6A6FF');
$markiereworte = array_unique(preg_split('/[\W_]/', strtoupper($_GET['markiere'])));
$text = '<p>Suchworte: '.implode(',', $markiereworte)."</p>\n".$text;
for ($i = 0; $i < count($markiereworte); $i++) {
$wort = $markiereworte[$i];
$farbe = $farben[$i % count($farben)];
$text = preg_replace("/((<[^>]*)|$wort)/ie", '"$2" == "$1" ? "$1" : "<span style=\"background-color:$farbe;border:solid 1px black;\">$1</span>"', $text);
} //foreach markiereworte
} //if markiere
echo $text."\n";
Der ist Text ist unübersichtlich? Ja, das mag sein. Der ist auch schon alt... :-)
Was ich mir bei dem Pattern im preg_replace gedacht habe? Das weiß ich doch heute nicht mehr. Ein Kommentar ist nicht überliefert... :-)
dedlfix