Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL]Zapytanie sql i polskie ogonki, Czy można sprawić żeby a było traktowane jak a i ą ?
Greg23
post
Post #1





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 6.04.2012

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


Na stronie głównej serwisu mam blok w którym wyświetlam najpopularniejsze artykuły w danym dniu
oraz najczęściej wyszukiwane frazy.

Po kliknięciu na link z frazą, wyszukuje i wyświetlam odpowiadające wyniki:
  1. http://www.abc.pl/szukaj-place


Jako, że w linkach nie mogę używać polskich znaków zamiast płace mam place i skrypt już mi nie wyszuka informacji
o płacach.

Jak to zrobić, żeby wyszukiwanie działało też dla polskich znaków diakrytycznych ?



--------------------
Go to the top of the page
+Quote Post
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Skorzystaj z systemu porównywania znaków (COLLATION), który traktuje znaki z oraz bez ogonków tak samo, np. utf8_unicode_ci. Więcej na ten temat, jak zwykle w manualu: http://dev.mysql.com/doc/refman/5.6/en/charset.html
Go to the top of the page
+Quote Post
Greg23
post
Post #3





Grupa: Zarejestrowani
Postów: 120
Pomógł: 0
Dołączył: 6.04.2012

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


Tylko, że dla tabeli o której mowa mam ustawione:
  1. collation: latin2_general_ci a wcale nie jest dobrze.


Zmieniłem też ogólne collation dla bazy na latin2_general_ci i też nic się nie zmieniło.

Dopiero jak wpisze w wyszukiwarkę słowo z polskimi znakami to mam odpowiednie wyniki w innym wypadku dostaje
coś innego.


EDIT // Zmiana dla tabeli i dla bazy na utf8_unicode_ci też nic nie zmianiła...

Ten post edytował Greg23 14.05.2012, 10:12:21


--------------------
Go to the top of the page
+Quote Post
Crozin
post
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Widocznie coś źle zrobiłeś - pokaż pełen zrzut bazy danych i kod. Możesz też wykonać prosty test by sprawdzić czy połączenie samo w sobie korzysta z odpowiedniego systemu porównywania znaków:
  1. SELECT "a" = "A", "ą" = "Ą";


Ten post edytował Crozin 14.05.2012, 10:57:46
Go to the top of the page
+Quote Post

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 Aktualny czas: 21.08.2025 - 21:39