Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: PHP: Hakuskripti

Sivun loppuun

Antti Laaksonen [28.01.2002 11:40:43]

#

Yksinkertainen PHP-hakuskripti, joka hakee haku.dat-tiedostoissa määritellyistä HTML-tiedostoista.

Tiedostossa haku.dat ensin on HTML-tiedoston otsikko, joka näkyy hakutuloksissa ja toisena HTML-tiedoston nimi.

<p><b>Haku</b></p>
<form action="haku.php" method="post">
<p>Kirjoita hakusana: <input type="text" name="sana"> <input type="submit" value="Hae">
</form>
<?php
if ($sana<>"")
	{
	$yht=0;
	$sana=strtolower($sana);
	echo "<p><b>Hakutulokset sanalle <i>".$sana."</i></b></p><p>";
	$d=file("haku.dat");
	for ($i=0;$i<count($d);$i=$i+2)
		{
		$tied=trim($d[$i+1]);
		if (file_exists($tied))
			{
			$hd=file($tied);
			$hi=0;
			for ($j=0;$j<count($hd);$j++)
				{
				if (substr_count(strtolower($hd[$j]),$sana)>0)
					{
					$hi++;
					}
				}
				if ($hi<>0)
					{
						echo "<a href='".$d[$i+1]."'>".$d[$i]."</a> (".$hi.")<br>";
						$yht=$yht+$hi;
					}
			}
		}
	if ($yht<>0)
		{
		echo "<p>Osumia yhteensä: ".$yht."</p>";
		}
	else
		{
		echo "<p>(ei osumia)</p>";
		}
	}
?>
</p>
<p align="right">Haun tarjoaa: <a href="https://www.ohjelmointiputka.net">Ohjelmointiputka</a></p>

haku.dat (esimerkki):

Sivun 1
sivu1.htm
Sivu 2
sivu2.htm

(nimetön) [29.01.2002 20:40:35]

#

Kansa tahtoo <b>sisennyksiä</b>

redcard [30.01.2002 20:14:10]

#

Sankari, Terzu tarkoitti, että opetelkaa sisentämään koodinne...ja kannatan tätä ehdotusta!

Antti Laaksonen [30.01.2002 20:54:46]

#

No nyt on sisennys. Itse asiassa vika ei ollut itse koodissa vaan sen näyttöskriptissä. No samapa tuo, joka tapauksessa toimii nyt.

snakari [31.01.2002 15:49:17]

#

Joo... Huomasin just viestin jälkeen!

(nimetön) [14.04.2002 14:10:48]

#

ei toimikkaan...

TETRIS [25.07.2002 19:22:13]

#

Toimis varmaankin mulla jos toi romu serveri tekis ton .dat tiedoston :(((

Ville [25.10.2002 21:21:18]

#

Tee ite kato :)

Zuka [05.02.2003 20:12:23]

#

miten ton saa hakee esim. index.php?sivu=jotaki ku toi ei toimi jos laittaa tollee toho filuu

djMiksu [12.02.2003 21:11:51]

#

Mitä pitäis laittaa haku.dat tiedostoon?

djMiksu [18.02.2003 13:40:17]

#

Joo, siis muistakaa muuten laittaa noi tietenkin niiden muiden tiedostojen sekaan, mistä se etsii... Eli siis jos laitat ne tyhjään hakemistoon, niin se ei oikee voi etsii ku ei oo paljoo mitä etsii...

lahtis [10.06.2003 02:50:12]

#

kuis tän sais lukemaan piilotetut (txt)tiedostot.
ja tulostamaan koko rivin mistä haku tai haut ovat löytyneet.

makeuu [31.08.2003 12:01:49]

#

Tosi hyvä, mutta sais näyttämään jotain edes tarkempia esimerkiksi toi ylläolevan

empty- [01.06.2004 20:19:09]

#

Tää ei toimi mun omalla servulla :( painaa hae niin ei tapahtu mitään muuta kun kirjotuskenttä tyhjenee...

Juice [15.07.2004 19:56:43]

#

koodi toimii oikein, kun PHP-osan alkuun lisää

$sana = $_POST['sana']

SysRq868 [11.09.2004 10:01:21]

#

Miten sais ton tyhjän välin tossa linkin sisällä poijes? replacella?

(nimetön) [01.10.2005 21:46:14]

#

lainaus:

Miten sais ton tyhjän välin tossa linkin sisällä poijes? replacella?

Korvaat rivillä 28 olevan $d[$i] -kohdan tällä: chop($d[$i])

Mutta mitenkä tuon scriptin sais olemaan hakematta tageja ja niiden attribuutteja (siis ylipäätään mitään tagin sisältä)? Ihan vaan periaatteessa en haluais että niitä löytyy.

stere [05.07.2006 15:59:17]

#

Miten sais et mul on käyttäjäskripti et tää hakis käyttäjän?? ku ne on kayttaja1.dat kayttaja2.dat tiedostoissa mutta et se ei kaiva niit salasanoja ku niit ei oo md5 hashattu.

Tontttu [09.09.2006 14:07:05]

#

lainaus:

koodi toimii oikein, kun PHP-osan alkuun lisää

$sana = $_POST['sana']

Perään vielä puolipiste(;), niin ei tuu virheilmotusta.

Codeprofile [08.12.2006 19:08:32]

#

Miten ton saa hakemaan tietoa määritetyistä URL:istä?

rax [18.06.2008 17:20:26]

#

Mites ton sais silleen, että se hakis tietystä kansiosta.
Et ei tarvi haku.dat tiedostoon mitään alkaa värkätä, vaan se ettii vaikka http://emg.jouluserver.com/scriptit/ osoitteen kaikista tiedostoista sen?

Ja sit silleen et se kuvaus on sitte se sivun nimi..

nerootto [04.09.2009 14:35:45]

#

Koodissa olisi hyvä, että se etsii hakemiston kaikista tiedostoista, missä on vaikka <?php include ("haku.php"); haku
?>

Ja, että se ottaa jostain meta tagista otsikon. Ei kukaan jaksa kirjoittaa sadan filen edestä mitää tiedostoo.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta