![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 24.04.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam,
być może ktoś z Was miał podobny problem Kodowanie serwera: utf8_unicode_ci Kodowanie skryptu php: utf8 Kodowanie bazy, tabeli i kolumny: latin2_general_ci. Problem mój polega na tym przy próbie wyszukiwania wyrazu z polskimi znaczkami, np 'ż'. Wyszukiwanie jest "case insensitive", ale nie radzi sobie z polskimi znaczkami, więc wyszukuje tylko takie jakie zostały wpisane. Próbowałem robić konwersję argumentu wyszukiwanego używając
oraz
ale nic nie dało pożądanych rezultatów. Próbowałem także używać przed wyszukiwaniem w bazie:
Czy nie powinienem tego zrealizować w transakcji? Z góry dziękuję za ewentualne możliwe rozwiązania a ja wracam dalej do eksperymentowania. Grzebię w tym i nic nowego nie wykombinowałem. Może inaczej. W bazie mam zapisane dane kodowane w utf-8, ale porównywać muszę wyrazy z polskimi znakami diakrytycznymi, więc na chwilę obecną, nie potrafi odróżnić, czy to jest mała czy duża litera (w przypadku znaków diakrytycznych). Ten post edytował shreeve 23.09.2008, 10:50:59 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 033 Pomógł: 125 Dołączył: 17.09.2005 Skąd: Żywiec Ostrzeżenie: (0%) ![]() ![]() |
Spróbuj zmienić metodę porównywania napisów dla tej kolumny na latin2_polish_ci. Jeśli z jakichś względów nie możesz ingerować w strukturę bazy, to dodaj tą informację do zapytania:
PS. SET NAMES informuje bazę jakiego kodowania woli używać klient (PHP), więc jeśli strony masz w UTF, to nie ładuj tam latin2. -------------------- "Sumienie mam czyste, bo nieużywane."
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 24.04.2007 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Niestety, próbuję z tym COLLATE dla kolumny, ale nie mam latin2_polish_ci, a przy próbie COLLATE utf8_unicode_ci/utf8_polish_ci/utf8_general_ci w ogóle nie radzi sobie z polskimi znakami.
|
|
|
--ghost-- |
![]()
Post
#4
|
Goście ![]() |
plik1.php:
plik2.php:
Kodowanie skryptu php: ISO-8859-2 Kodowanie bazy, tabeli i kolumny: latin2_general_ci. Po nawiązaniu połączenia i wybraniu bazy danych, ustawienie kodowania na LATIN2:
Wyszukuje polskie znaki. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 19:53 |