ďťż
Podstrony
|
telcocafePostanowił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ę: 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. możesz przed wtslaniem zpaytania zrobić funkcję która konwertowalaby polskie znaki na znaki UTF. robiłem: iconv("ISO-8859-2","UTF-8",chr($znak)); Jednak to nic nie daje, poza tym jak już napisałem problem jest częściowo rozwiązany, jednak niektóre polskie znaki są reprezentowane w utf-8 w identyczny sposób. Dlatego ten topic i mój problem jest kierowany bardziej do ludzi którzy robili stronkę w utf-8 i borykali się z podobnym problemem bądź mają jakieś doświadczenie. Gdybanie tutaj nic nie da, nie jestem aż tak zupełnie zielony. Użytkownik boryssek edytował ten post 08 styczeń 2007, 11:56 Polskie ogonki zapisywane są w utf8 za pomocą dwóch bajtów: ąćóń wygłąda tak: ÅÇóń //edit: chodzi mi o to, że może do konwersji wysyłasz pojedynczy bajt zamiasta całego znaku Użytkownik Radek edytował ten post 09 styczeń 2007, 07:39 tak tylko ze w bazie jest to trochę inaczej, sam nie wiem dlaczego. Tak jak już pisałem te podane przez ciebie nie koniecznie muszą pasować do tych w bazie. Poza tym niektóre ogonki są reprezentowane tak sam, o czym także wspomniałem wcześniej. |
|||
Sitedesign by AltusUmbrae. |