Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zmiana wielkości znaków diakrytycznych w UTF-8, Zmiana wielkości znaków diakrytycznych w UTF-8 bez użycia tablica
jakubmroz.com
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 24.06.2008
Skąd: Kraków

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


Witam,
Jak można dokonać konwersji ciągu znaków zawierającego znaki diakrytyczne (ą, ć, ź, ż...) bez użycia tablic, w które wpisane są na sztywno znaki.

Zastosowanie do wyszukiwania danych z bazy danych MySQL, kodowanie UFT-8.

Czy istnieję zestawienie funkcji operujących na stringach tak aby w rezultacie z textu, np. Łobodziński otrzymać ŁOBODZIŃSKI?

Proszę o przykład kodu.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Shili
post
Post #2





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


Co do drugiego pytania - tak, istnieje.
http://pl2.php.net/manual/pl/function.mb-strtoupper.php
http://pl2.php.net/manual/pl/function.strtoupper.php
Go to the top of the page
+Quote Post
nevt
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

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


a co do pierwszego, to MySQL sam to załatwia, musisz tylko ustawić odpowiednie COLLATE dla bazy/ tabeli /pola, albo dodać klauzulę COLLATE wprost do zapytania SQL, np.:
  1. SELECT 'roza' = 'róża' COLLATE 'utf8_polish_ci';

zwróci 0 (FALSE) - w tym trybie odróżnia znaki narodowe, ale
  1. SELECT 'roza' = 'róża' COLLATE 'utf8_general_ci';

zwróci 1 (TRUE) - w tym trybie dla bazy a = ą, c=ć, itd...
powodzenia.
Go to the top of the page
+Quote Post
jakubmroz.com
post
Post #4





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 24.06.2008
Skąd: Kraków

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


Dziękuję za szybką pomoc i trafną odpowiedź.
Jakub M.

Ten post edytował jakubmroz.com 24.06.2008, 12:23:23
Go to the top of the page
+Quote Post
jml
post
Post #5





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 8.02.2007

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


Jeśli wszystkie pliki zapiszesz w UTF-8 (windows standardowo zapisuje w windows1250 czy cos), w bazie ustawisz dla bazy kodowanie UTF-8 i colate UTF-8 general ci (general wystarczy, nie musi być polish a ma i znaki narodowe z wiekszosci innych jezyków). Dodatkowo przy wyswietlaniu w dokumencie HTML oczywiscie w meta:
  1. <meta http-equiv="content-type" content="text/html; charset=utf-8" />

To chyba już trywialne ale wspomniałem, to nie będziesz miał więcej problemów z polskimi znakami (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.12.2025 - 11:38