Jestem w trakcie testowania swojej wyszukiwarki i zauważyłem że nie wyszukuje ona litery ó w wyszukiwanych tekstach. Wyszukiwarka działa następująco:
- pobranie wszystkich obiektów
- zamiana dużych liter na małe
- wyszukiwanie funkcja strstr() czy jest szukany ciąg w tekście
Wyszukiwarka działa ok, wyszukuje wyrazy z ę,ą,ć,ł itd... wszystko poza literą ó. Ktoś wie o co może chodzić?
Używam kodowania utf-8
- dane zapisane w bazie mysql w utf8_general_ci
- po połączeniu z bazą danych ustawiam "SET CHARACTER SET 'latin2'" (jest to konieczne?)
Znalazłem jeszcze coś takiego:
<?php ?>
w efekcie pokazuje sie:
Array ( [input_encoding] => ISO-8859-1 [output_encoding] => ISO-8859-1 [internal_encoding] => ISO-8859-1 )
Mam jeszcze jedno pytanie, wyszukiwarka jest oparta na zend frameworku. Praktycznie kodowanie utf-8 dopiero zaczyna dzialac przy ladowaniu templatow. Czy wrzucenie do indexu
<?php ?>
załatwia sprawę?
Aha na koniec jeszcze jedno, wyszukiwanie w bazie danych przez "Select.... LIKE '%ó%'" daje 0 elementów znalezionych... Zupełnie nie czaje o co tu chodzi :/