![]() |
![]() ![]() |
![]() |
-lukasamd- |
![]()
Post
#1
|
Goście ![]() |
Witam,
mam dosyć dziwny problem w moim serwisie. Jest szukajka, która szuka w newsach, artykułach i downloadzie (użytkownik wybiera w formularzu) poprzez LIKE - takie mało skomplikowane, w sumie aby działało. No i działało... ale pojawił się problem. W wypadku newsów i artykułów jest ok, ale przy downloadzie ZAWSZE zwraca 0 wyników. Kupa słów zawiera ciąg jagged, a mimo to nie może znaleźć niczego typu %jagged%, %jagg% czy nawet %gg%... Nie zmieniałem struktury bazy, nie zmieniałem plików a samo z siebie "padło". Jedyne co robiłem w ostatnim czasie, a właściwie już jakiś czas temu to zmiana kodowania z ISO na UTF-8. Jeżeli to wywołało problem - jak to naprawić no i jak uniknąć takich niespodzianek w przyszłości? EDIT Dzisiaj już wiem, że to przez wielkość liter - po prostu bierze je pod uwagę, choć nie powinien. Porównywanie znaków jest ustawione na utf8_bin, próbowałem zmienić na utf8_general_ci, ale nie zmieniło to nic - nadal robi LIKE z patrzeniem się na wielkość... jak to ominąć? EDIT2: Ok, problem rozwiązany - zapomniałem zmienić porównywanie dla pól... stąd problem, zauważyłem to stosując strtolower + LOWER(). Mimo wszystko nie na wiele się to zdało, bo LIKE trwa około 0,2s... przerzuciłem więc wszystko na FULLTEXT. Ten post edytował lukasamd 15.10.2009, 13:11:01 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 14:10 |