• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Suchfunktion in Homepage einbauen (interne Suche)

Status
Für weitere Antworten geschlossen.

conzu

Neues Mitglied
Gruß,

ich habe folgendes Problem. Ich möchte gern eine Seiteninterne suche in meine HP einbauen und finde aber dafür nur Befehle in php-Sprache und nicht in HTML. Es sollte ohne datenbank sein, nur mit durchsuchen des Dokumentes.
1. Hat schon mal jemand so was programmiert und kann es mir zukommen lassen.
2. Kann man die php-Vorlage irgendwie in html umwandeln und somit nutzen?

Ich hoffe ihr könnt mir weiter helfen.

Danke und grüßt die Hühner
 
Werbung:
Werbung:
wenn du eine eigene suchmaschine in deine hp einbauen willst können wir dir nicht helfen ausser du gibst und den source der seite und der scuhmaschine...
 
das ist der code von der seite aber irgendwie bekomm ichs mal wieder nicht geschissen-.-

[php:1:4d04a0b7a2]<?php
echo "<HTML><BODY>";
echo "<FORM ACTION=$PHP_SELF METHOD=POST> ";
echo "<INPUT TYPE=TEXT NAME=wort VALUE=$wort>";
echo "<INPUT TYPE=SUBMIT VALUE=Durchsuchen></FORM>";
$wort = strtolower(trim($wort));

if($wort) {

// Funktion zum Auslesen des Verzeichnisses

function read_dir($dir=".",$endung=".htm") {
settype($dateinamen,"array");
if(!is_dir($dir)) return false;
$verzeichnis = dir($dir);
while($datei = $verzeichnis -> read()) {
if($datei[0] != "." && substr($datei,strlen($endung)*(-1)) == $endung) {
$dateinamen[] = $datei;
}
}
$verzeichnis->close();
sort($dateinamen);
return $dateinamen;
}

// Das Hauptprogramm

$dateinamen = read_dir(".");
for($i=0;$i<count($dateinamen);$i++) {
$name = $dateinamen[$i];
$datei = "$name";
$start = 0;
$fp = fopen($datei,"r");
while(!feof($fp)) {
$zeile = strtolower(trim(fgetss($fp,1024)));
if(strstr($zeile,$wort)) {
$name = substr($name,0,strlen($name)-4);
if (!$ergebnis) echo "Folgende Dateien enthalten Ihren Suchbegriff:

";
echo "<A HREF=\"$datei\">$name()</A>
";
$ergebnis++;
break;
}
}
fclose($fp);
}

if(!$ergebnis) echo "Keine passenden Dateien gefunden";

}

echo "</BODY></HTML>";

?>

[/php:1:4d04a0b7a2]

mfg :)
 
Werbung:
Er meint den echo-Befehl in PHP: Das ist ein Befehl zur Ausgabe von Strings (Text).
 
Werbung:
das funzt bei mir aber nicht ich bekomm immer nen 404 error..... wenn ich die datei mit der suchmaschin im hauptordner drin hab was geb ich denn dann bei dir ein????
 
reflixx: fuer dir unbekannte befehle benutze doch bitte die automagische such funktion von php.net
Code:
http://php.net/name-unbekannten-function
die zeichen _ sind durch - zu erstzen, leerzeichen und klammern natuerlich weglassen.
beispiele:
Code:
http://php.net/preg-replace -> suche nach preg_replace ()
http://php.net/echo -> suche nach echo
http://php.net/mysql-real-escape-string -> suche nach mysql_real_escape_string ()
germanpitbull wann bekommst du einen "404" error?
wo ist das lebende beispiel
 
Werbung:
also wenn ich den quelltext so kopiere und für dir dann zB html eingebe funzt zwar die suchoberfläche aber sobald ich dann auf abschicken gehe bekomm ich nen 404.... ich lads mal hoch mom.....


EDIT:
http://gpb.gp.funpic.de/search.php

das ist jetzt genau der quell text und bei dir="." hab ich den namen des ordners eingegeben... aba bei mir funzt jetzt irgendwie garnix?!


doch millionen fehlermeldungen?! ah son müll... nix geht...
 
mach mal nach
[php:1:87a6eed1f4]
$dateinamen = read_dir(".");
[/php:1:87a6eed1f4]
ein
[php:1:87a6eed1f4]
var_dump($dateinamen);
[/php:1:87a6eed1f4]
und ersetze
[php:1:87a6eed1f4]
for($i=0;$i<count($dateinamen);$i++) {
$name = $dateinamen[$i];
$datei = "$name";
[/php:1:87a6eed1f4]
durch
[php:1:87a6eed1f4]
foreach ( $dateinamen as $datei ) {
[/php:1:87a6eed1f4]
und vor
[php:1:87a6eed1f4]
$fp = fopen($datei,"r");
[/php:1:87a6eed1f4]
noch ein
[php:1:87a6eed1f4]
if(true !== is_readable($datei)) die($datei . ' nicht lesbar');
[/php:1:87a6eed1f4]
 
Werbung:
[php:1:082acece03]
<?php
echo "<HTML><BODY>";
echo "<FORM ACTION=$PHP_SELF METHOD=POST> ";
echo "<INPUT TYPE=TEXT NAME=wort VALUE=$wort>";
echo "<INPUT TYPE=SUBMIT VALUE=Durchsuchen></FORM>";
$wort = strtolower(trim($wort));

if($wort) {

// Funktion zum Auslesen des Verzeichnisses

function read_dir($dir="gpbon",$endung=".htm") {
settype($dateinamen,"array");
if(!is_dir($dir)) return false;
$verzeichnis = dir($dir);
while($datei = $verzeichnis -> read()) {
if($datei[0] != "gpbon" && substr($datei,strlen($endung)*(-1)) == $endung) {
$dateinamen[] = $datei;
}
}
$verzeichnis->close();
sort($dateinamen);
return $dateinamen;
}

// Das Hauptprogramm

$dateinamen = read_dir("gpbon");
var_dump($dateinamen);
foreach ( $dateinamen as $datei ) {
$start = 0;
if(true !== is_readable($datei)) die($datei . ' nicht lesbar');
$fp = fopen($datei,"r");
while(!feof($fp)) {
$zeile = strtolower(trim(fgetss($fp,1024)));
if(strstr($zeile,$wort)) {
$name = substr($name,0,strlen($name)-4);
if (!$ergebnis) echo "Folgende Dateien enthalten Ihren Suchbegriff:

";
echo "<A HREF=\"$datei\">$name()</A>
";
$ergebnis++;
break;
}
}
fclose($fp);
}

if(!$ergebnis) echo "Keine passenden Dateien gefunden";

}

echo "</BODY></HTML>";

?>
[/php:1:082acece03]

so?? jetzt findet er zwar was aba die ausgabe ist komisch?!

http://gpb.gp.funpic.de/search.php

gebt mal als suchbegriff pitbull ein.....

erm und er durchsucht nur .htm daten mit
[php:1:082acece03]<?php
function read_dir($dir=".",$endung=".htm") {
?>[/php:1:082acece03]

kann ich auch sagen er soll .htm .html und .php durchsuchen??

ahh alles zuviel für mich kleinen anfänger ^^
 
Werbung:
pitbull home.htm ist nicht lesbar.
versuch mal eine 5 fuer "andere" zu setzen (XXX5)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben