Suchscript in PHP
Marlon
Also, ich suche ein Suchscript, was meine HTML-Dateien (allerdings in .php gespeichert) durchsucht und die Ergebnisse hinterher anzeigt.
Es sollen jedoch nicht die MetaTags angezeigt werden bei den Ergebnissen, sondern die Textpassage im Text, wo das Suchwort vorkommt.
GreenRover
Also da lad dir mal:
Suchscript
runter.
das ganze lädst du denn in den
Unterordner suchen auf deinen Webspace.
dann die search_config.php wie folgt anpassen:
| php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
|
<?php
error_reporting(0);
$pfadinfo = $SERVER_NAME;
$mail = false;
$seite = "suchen.php";
$reloadlimit = 600;
$dat_type = "htm|html|shtml|php|php3|php4";
$value = "Suchbegriff";
$length = 3;
$dirs = array('../');
$alledirs = false;
$exclude_files = array('search.php',
'search_config.php',
'reload.txt',
'searchlog.txt');
$filename = true;
$key = false; //true, wenn das meta tag keywords durchsucht werden soll, andernfalls false
$desc = false; //true, wenn das meta tag description durchsucht werden soll, andernfalls false
$tit = false; //true, wenn das meta tag title durchsucht werden soll, andernfalls false
$tags = false; //true, wenn ALLE tags durchsucht werden sollen, andernfalls false
$limit_start=""; #$limit_start = "<body";
$limit_end = "";
$exclude_strings = array('Suchbegriffe','externer Link:');
$vor = 20;
$nach = 90;
$show_desc = false;
$target = ""; // Ziel in neuem Fenster öffnen oder einem bestimmten Frame?
$jump = false;
$treffer = true;
$pfad = false;
$aend_dat = false;
$anz_dat = 100; // Ausgabe auf bestimmte Anzahl Dateien beschränken:
$num_list = true; // Anzeige als nummerierte Liste <ol>?
$tipps = false; // wenn false, dann werden die Suchtipps nicht angezeigt
///////////////////////// Meldungen personalisieren /////////////////////
# $noresult = "<p><br />Es wurden leider keine exakten Übereinstimmungen mit dem eingegebenen Suchbegriff gefunden.<br />Vielleicht wollen Sie es mit einem allgemeineren Suchbegriff versuchen.</p>";
# $minlength = "<p><br />Geben Sie bitte einen Suchbegriff von mindestens ".$length." Buchstaben Länge ein.</p>";
# $suchhinweis = "Sie suchen nach";
# $foundtxt = "Dokumente gefunden";
# $angezeigttxt = ".<br />Angezeigt werden die <strong>$anz_dat</strong> besten Ergebnisse";
# $sorttxt = ", sortiert nach [Anzahl der Treffer pro Dokument]";
# $suchtip0 = "<h3>Suchtipps:</h3>";
# $suchtip1 = "<li>Die Eingabe von Platzhalterzeichen (*) ist nicht erforderlich.</li>";
# $suchtip2 = "<li>Wenn Sie Ihre Suche auf ganze Wörter einschränken wollen, fügen Sie vor und nach dem Suchbegriff jeweils ein Leerzeichen ein.</li>";
# $suchtip3 = "<li>Mehrere Wörter werden automatisch mit UND verknüpft.</li>";
# $suchtip4 = "<li>Falls die Suche nur einen einzigen Treffer ergibt, wird die Trefferseite direkt angesprungen.</li>";
# $timetxt = "Suche ausgeführt in ";
?> |
|
Dann kannst du den oder ähnlichen code in deine suche seite ienfügen zum suchen:
| code: |
1:
2:
3:
4:
5:
6:
|
<form id="search" method="get" action="suchen/search.php">
<p><label for="suchbegriff">Im Projekt suchen:</label>
<input type="text" name="q" id="suchbegriff" value="Suchbegriff" size="13" title=" Suchbegriff hier eingeben " onblur="if(this.value=='')this.value='Suchbegriff';" onfocus="if(this.value=='Suchbegriff')this.value='';" />
<input type="submit" value="Los !" />
</p>
</form> |
|
so dann noch die search.php mit der im anahng ersetzen und dein design kannst du denn vor und nach dne PHP Tags setzen, oder dieses inlcuden was wohl schicker währe, oder auch die search.php in das design includen, wobei du dann aber das action im such form anpassen mußt.
EDIT: Der Anhang wurde auf Grund des Wunsch des Enwicklers dieser Software entfernt, da es mitlerweile schon neuere Version gibt.
sandmann
ich hab da noch ne frage
was is mit der datei die aus dem anhang entfernt wurde?
ich bräuchte die wenns geht.
GreenRover
Oben ist noch der Link zur Orginalversion.
Der anhang wurd auf wunsch des Entwicklers entfernt und wird deshalb auch nicht mehr geuppt.
FuKo
Ich hab das jetz auch mal bei mir gemacht, will aber nach dem Inhalt auf allen der verlinkten Seiten suchen lassen!
Wie stell ich das auf Inhalt, und wie lass ich das auf allen Seiten suchen?
Bin leider ein voll noob, also erklärt mir das bitte so schön wie oben.
Schon mal Vielen Dank
FuKo
FuKo
Also ich bin jetzt ein bisschen wieter, da ich noch mal bei anderen Threads reingeguckt hab, doch bei einer Stele hängts jetzt.
Wenn ich einen Suchbegriff eingegeben hab und auf Los drück, dannöffnet sich die Suchmaske in einem neuen Fenster und sagt sie habe nichts gefunden. Wenn ich dann nochmal suche in diesem neuen Fenster, dann sucht die zwar richtig, findet aber nur innerhalb der Suchmaske etwas, da der restliche Text von der Suchmaske nicht mit in das neue Fenster genommen wurde.
GreenRover
Also ich verstehe zwar kaum ein wort von deinem geschreibzel aber OK.
die config hast du so übernomen ?!?1
das suchscript liegt direkt im unterordner uaf deienr page (z.B.
www.xyz.de/suche/ )
und du nutzt htm ode html datein ?1
FuKo
Ich hab in meine Hauptdseite die Suchenfunktion Suchen.php rein kopiert. ( hab es auch mal mit ner Verknüpfung probiert, da ändert sich nix)
Die Search_config.php hab ich wie folgt eingestellt:
<?php
error_reporting(0);
$pfadinfo = "www.FuKo.cwsurf.de/htdocs/";
$dat_type = "htm|html|shtml|php|php3|php4";
$value = "Suchbegriff";
$length = 3;
$dirs = array('./htdocs/');
$exclude_files = array('search.php',
'search_config.php',
'reload.txt',
'searchlog.txt');
$key = false; //true, wenn das meta tag keywords durchsucht werden soll, andernfalls false
$desc = false; //true, wenn das meta tag description durchsucht werden soll, andernfalls false
$tit = false; //true, wenn das meta tag title durchsucht werden soll, andernfalls false
$tags = false; //true, wenn ALLE tags durchsucht werden sollen, andernfalls false
$limit_start = "<body";
$limit_end = "";
$vor = 17;
$nach = 90;
$show_desc = true;
$target = "";
$jump = true;
$treffer = true;
$pfad = true;
$aend_dat = true;
$anz_dat = 10;
$num_list = true;
$tipps = true;
$gzip = false;
///////////////////////// Meldungen personalisieren /////////////////////
// im Folgenden können die Textmeldungen des Programms personalisiert werden.
// damit ist auch die Verwendung auf fremdsprachigen Seiten möglich.
// ACHTUNG! die HTML TAGS (z.B: <p>) nur ändern, wenn Du weißt, was Du tust.
// wenn Du eine bestimmte Meldung nicht willst dann schreibe z.B.: $suchtip1 = "";
// wenn eine Variable (Zeile) gelöscht oder wegkommentiert wird (durch vorangestelltes #),
// dann wird die Standardmeldung verwendet.
$noresult = "<p><br />Es wurden leider keine exakten Übereinstimmungen mit dem eingegebenen Suchbegriff gefunden.<br />Vielleicht wollen Sie es mit einem allgemeineren Suchbegriff versuchen.</p>";
$minlength = "<p><br />Geben Sie bitte einen Suchbegriff von mindestens ".$length." Buchstaben Länge ein.</p>";
$suchhinweis = "Sie suchen nach";
# $foundtxt = "Dokumente gefunden";
$treff = "Treffer";
$filedate = "zuletzt geändert am ";
$angezeigttxt = ".<br />Angezeigt werden die <strong>$anz_dat</strong> besten Ergebnisse";
$sorttxt = ", sortiert nach [Anzahl der Treffer pro Dokument]";
$suchtip0 = "<h3>Suchtipps:</h3>";
$suchtip1 = "<li>Die Eingabe von Platzhalterzeichen (*) ist nicht erforderlich.</li>";
$suchtip2 = "<li>Wenn Sie Ihre Suche auf ganze Wörter einschränken wollen, fügen Sie vor und nach dem Suchbegriff jeweils ein Leerzeichen ein.</li>";
$suchtip3 = "<li>Mehrere Wörter werden automatisch mit UND verknüpft.</li>";
$suchtip4 = "<li>Falls die Suche nur einen einzigen Treffer ergibt, wird die Trefferseite direkt angesprungen.</li>";
$timetxt = "Suche ausgeführt in ";
$beschreib = "Beschreibung";
?>
Meine Probleme ich weiß nicht was es mit dem query bzw. template auf sich hat und die Suchen Funktion funzt auch nicht so richtig.
Du kannst es dir ja mal auf FuKo.cwsurf.de ansehen, wie es aussieht.
Wenn dir da was zu einfällt wär´s echt toll. Wenn du irgendwelche besonderen zusatzinfos brauchst sag es bitte, nur weiß ich nicht ob ich dir da irgendetwas zu sagen kann, da ich mich da nicht so gut mit auskenne.