![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 20.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mam taki skrypt wyszukiwarki pobrany z tej strony
Formularz: Kod <form action="szukaj.php" method="post" style="display:inline;"> <fieldset style="border:0px;"> <input type="text" name="szukane" style="width:110px;" /> <input type="submit" value="ok" /> </fieldset> </form> Skrypt: Kod <?php if($szukane==""){ $szukane="xyz";} $baza = file("baza.txt"); for ($index=0; $index < count($baza); $index++) { $grupa = split("\|", chop($baza[$index])); $count="0"; if (eregi("$szukane", $baza[$index])) { $count++; echo "» <a href=\"$grupa[0]\">$grupa[1]</a><br />"; } } ?> Problem jest taki że gdy w pliku baza.txt dam jakieś słowo zaerające polskie znaki to przykładowo zamiast "ą" pokazuje "š". Próbowałem wstawic do skryptu metataga z kodowaniem ale to niepomogło więc zwracam się do was w jaki sposób można rozwiązac ten problem. I jeszcze 2 sprawa: jak zrobic żeby pokazywało po wyszukaniu - jeżeli coś znajdzie Znaleziono pozycji: 'liczba znalezionych tytułów zawierające ten wyraz' oraz w przypadku braku znalezienia Nic nie znaleziono OK do części już doszedłem co i jak ale niewiem jak zrobic żeby pokazywało po wyszukaniu - jeżeli coś znajdzie Znaleziono pozycji: 'liczba znalezionych tytułów zawierające ten wyraz' oraz w przypadku braku znalezienia Nic nie znaleziono wyczytałem że trzeba się pobawic ze zmienną #count i znalazłem takie coś: Kod if($count>0) echo "Znaleziono pozycji: $count<br><br>"; else echo 'Nic nie znaleziono.'; echo $print; czyli po wstawianiu skrypt wygląda następująco: Kod <?php if($szukane==""){ $szukane="xyz";} $baza = file("baza.txt"); for ($index=0; $index < count($baza); $index++) { $grupa = split("\|", chop($baza[$index])); $count="0"; if (eregi("$szukane", $baza[$index])) { $count++; echo "» <a href=\"$grupa[0]\">$grupa[1]</a><br />"; } } if($count>0) echo "Znaleziono pozycji: $count<br><br>"; else echo 'Nic nie znaleziono.'; echo $print; ?> ale coś widze że są nieprawidłowości w wyświetlaniu bo np jak znajdzie 4 frazy to pokazuje ze znalazło 1 jak nic nieznajdzie to pojkazuje ze nic nie znalazło ale jak znowu wyszukam coś to tez pokazuje ze nic nieznalazło. Czy ktoś może mi poprawic kodzik ? ![]() Ten post edytował novak666 8.01.2007, 12:44:43 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 4.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
$count wychodzi ci 1 poniewaz zerujesz ja przy kazdym wykonaniu petli, czyli $count=0 powinno byc przed petla for
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 00:22 |