Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: flat file db:n sanahaku

str [13.12.2003 16:37:46]

#

Mul on flat fileenä .txt -tiedostossa dataa muodossa

|data1|data2|data3|
|data1|data2|data3|
jne...

Miten saan toimimaan kunnollisen sanahaun ko. tiedostosta siten, että haku tulostaa koko datarivin, mistä haettava sana on löytynyt?

Oheinen skripti kun ei vörki...

<?php

$hakusana = "Tätä etsitään!";
$sopivatRivit = array();
$rivit = file("ilmot2004.txt");

for($i=0;$i<count($rivit);$i++) {
  if(strstr($rivit[$i],$hakusana))
    $sopivatRivit[] = trim($rivit[$i]);
} // for

for($i=0;$i<count($sopivatRivit);$i++) {
  print $sopivatRivit[$i]."<br />";
}

?>

Olga [13.12.2003 19:00:28]

#

Mikä ylläolevassa koodissa on vikana?

str [13.12.2003 19:51:10]

#

Tjaa kun tietäs.

Mitään en saa näkyviin, parse erroria lykkää. Jotain filunkia on ekassa for-luupissa... kait...?

T.M. [13.12.2003 19:57:52]

#

<?php

$hakusana = "Tätä etsitään!";
$rivit = file("ilmot2004.txt");

for($i = 0; $i < count($rivit); $i++){
    if(strstr($rivit[$i], $hakusana)) $sopivatRivit[] = trim($rivit[$i]);
}

print"<pre>";
print_r($sopivatRivit);

?>

koodissa ei näyttänyt olevan mitään vikaa, mutta kannattaa aina ekaksi tarkistaa print_r() funktiolla mitä se ulostaa, jos tietoja tungetaan taulukkoon. Helpompaa ja nopeampaa :)

str [13.12.2003 21:35:26]

#

Aiiiiwan! Homma toimii nyt. Thanks!

Vastaus

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

Tietoa sivustosta