Witam,
piszę skrypt słownika.Działa to mniej więcej tak, że w pliku tekstowym są słowa wraz z ich tłumaczeniami rozdzielone separatorami.Na stronie jest wyszukiwarka, plik txt jest przeszukiwany po słowie które wpisze się do wyszukiwarki.I tu problem, jak się wpisze wyraz bez polskich liter, to działa.Natomiast jak się wpisze cokolwiek zawierające polską literę to zwraca 0 wyników [???] .Rekordy w pliku txt są zapisane w formacie kodowania ANSI C.Nie jest zastosowane kodowanie 8859-2, tak więc np. słowo
sprzątaczka jest zapisane jako sprzątaczka a nie sprz±taczka.
kod do porównywania jest napisany w ten sposób:
$word = $_POST['word'];
for($i=0;$i<RocordCount;$i++)// skanowanie po wszystkich rekordach
{
if(eregi("$word", $line[$i]))
{ // jeżeli znaleziono pasujący element
$result++;
//dalszy kod
}
}
Zastanawiam się, czy zmienna word z wyszukiwarki nie musi być przypadkiem kodowana, ale się na tym nie znam.Wcześniej, w innych skryptach, do kodowania URL wykorzystywałem funkcje UrlEncode oraz RawUrlEncode.Wyszukiwarka wysyła zmienną metodą POST.
Przykład
Rekord wystąpi np. w tym przypadku:
szukane słowo sprzątaczka we frazie odkurzacz, sprzątaczka.
Pozdrawiam