Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [sql] Porównywanie znaków - ignorowanie polskich znaków
propage
post
Post #1





Grupa: Zarejestrowani
Postów: 330
Pomógł: 0
Dołączył: 25.01.2008

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


Chciałbym stworzyć wyszukiwarkę, która będzie zwróci te same wyniki, gdy ktoś wpisze "długa" lub "dluga".
W bazie jest zapisana poprawna wartość z "ł" - "długa"
Jak najprościej to zrobić

Ten post edytował propage 16.09.2010, 16:41:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Noidea
post
Post #2





Grupa: Zarejestrowani
Postów: 226
Pomógł: 61
Dołączył: 20.08.2010

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


Generalnie to co chcesz osiągnąć załatwia się w MySQL ustawieniem: COLLATION utf8_general_ci. Ale żeby nie było zbyt łatwo, to MySQL i tak traktuje wtedy "ł" i "l" oraz "Ł" i "L" jako różne znaki (IMG:style_emoticons/default/smile.gif)
Więc jeśli interesują cię wyłącznie polskie znaki, to ustaw odpowiednie COLLATION i załatw sprawę literki Ł tak jak ci ludzie doradzają.



Test
  1. SET NAMES utf8 COLLATE utf8_general_ci;
  2. SELECT "ą" = "a",
  3. "ż" = "z",
  4. "ś" = "s",
  5. "ź" = "z",
  6. "ę" = "e",
  7. "ć" = "c",
  8. "ń" = "n",
  9. "ó" = "o",
  10. "ł" = "l",
  11. "Ą" = "a",
  12. "Ż" = "z",
  13. "Ś" = "s",
  14. "Ź" = "z",
  15. "Ę" = "e",
  16. "Ć" = "c",
  17. "Ń" = "n",
  18. "Ó" = "o",
  19. "Ł" = "l";


Ten post edytował Noidea 17.09.2010, 14:06:32
Go to the top of the page
+Quote Post

Posty w temacie


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: 11.10.2025 - 15:31