Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php][MySQL]utf-8 polskie znaki w bazie, wyszukiwanie po polskich literkach
bcb
post 8.01.2007, 11:20:51
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 4.07.2005

Ostrzeżenie: (0%)
-----


Postanowiłem zrobić stronkę w całości w UTF-8 jako iż strona ma być w dwóch wersjach językowych.
Wszytko działa nie mam krzaków na stronie www, czy coś w tym stylu.

Problem dotyczy tego iż polskie znaki są trzymane w bazie w postaci krzaczków (w utf-8).
Kiedy chcę zrobić zapytanie wyświetlenia danych zaczynających się na jakąś literkę stosuję:
Kod
SELECT * FROM tabela WHERE pole LIKE '$x%'

Wszystko ładnie działa do momentu kiedy pod zmienną $x nie przekazuje polskiego znaku.
probowałem zastosować iconv jednak to też nic nie daje.

Poniekąd rozwiązałem problem:
Stworzyłem tabele mysql z polskimi literkami w utf-8 wyciągam je i odpowiednio porównuje, wtedy powyższe zapytanie działa, tylko nie wiem dlaczego ale kiedy chce coś wyświetlić na literkę Ą wyświetlają się również wpisy na: Ć, Ę.
To samo jest z Ł, Ń, Ś. Faktycznie reprezentacja tych znaków w utf-8 wygląda identycznie.

Podobne problemy prawdopodobnie będą się również pojawiać w wyszukiwarce na stronie kiedy ktoś wyśle słowo do wyszukania z polskim znakiem.

Może ktoś wie jak rozwiązać ten problem w inny, w pełni działający sposób.

Na koniec jeszcze, czy jest sens tworzenia strony w utf-8? Czy jeśli serwis jest dwujęzyczny, mogę go w całości prezentować w iso-8859-2 ? To by rozwiązało w całości powyższe problemy.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 13:32