Witacie! Mam pytanko. Mianowicie jak zmienić poniższy kod by przy przeszukiwaniu plików uwzględniał tylko określone znaczniki np <title></title>
a inne ignorował. Bo przy tak obszernym szukaniu wśród 100 plików będzie trudno znaleźć właściwy plik. Z góry dziękuję za pomoc.
<?
if (isset($_POST["zapytanie"])) $zapytanie=strtolower($_POST["zapytanie"]);
else $zapytanie="";
$zakazane_pliki=array("funkcje.php","hasla.php","szukaj.php");
$dozwolone_rozszerzenia=array("html");
if ($zapytanie!="") {
echo "<font size=5>Wyniki wyszukiwania frazy <b>$zapytanie</b>:<br></font>";
przeszukuj(".",$zapytanie, $zakazane_pliki,$dozwolone_rozszerzenia);
}
else echo "<font size=5>Nie wpisales zadnej frazy!</font>";
function przeszukuj($nazwa_folderu,$zapytanie,$zakazane_pliki,$dozwolone_rozszerzenia)
{
if (!isset($nazwa_folderu)) $nazwa_folderu=".";
$folder=opendir($nazwa_folderu);
while ($plik=readdir($folder))
{
if ((!in_array($plik, $zakazane_pliki)) && in_array(substr($plik,strrpos($plik,".")+1),$dozwolone_rozszerzenia))
{
$zawartosc=implode("",file($nazwa_folderu."/".$plik));
$zawartosc2=strip_tags(strtolower($zawartosc));
$pozycja=strpos($zawartosc2, $zapytanie);
$start=strpos($zawartosc, "<title>")+7;
$stop=strpos($zawartosc, "</title>");
if ($start===false || $stop===false)
$tytul="brak tytułu strony";
else
$tytul=substr($zawartosc,$start,($stop-$start));
if ($pozycja!==false)
{
echo "<br><br><center><font size=4><a href=".$nazwa_folderu."/".$plik.">".$tytul."</a><br></center></font>";
}
}
if ($plik!="." && $plik!=".." && is_dir($nazwa_folderu."/".$plik))
przeszukuj($nazwa_folderu."/".$plik, $zapytanie, $zakazane_pliki, $dozwolone_rozszerzenia);
}
closedir($folder);
}
?>
Dodane dnia 1 maja:
Kod formularza:
<html>
<head>
</head>
<body>
<form method="POST" action="http://gothicumsite.go.funpic.org/encyklopedia/hasla/szukaj.php">
<center><input type="text" name="zapytanie" size="20">
<center><input type="submit" value="Szukaj" name="s1">
</form>
</body>
</html>
Odswiezono na prosbe autora/Pieka
Edytowane przez Marvin-Nekromanta dnia 01.05.2007 13:24:25
|