Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> strtolower nie działa..., jak porównać polskie litery (Ł vs. ł)?
codo
post
Post #1





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 31.10.2004

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


Mam juz tego dosyc... zaczelo sie od napisania wyszukiwarki. Po wpisaniu słowa "łódź" miała mi znaleźć takze te dane z bazy ktore zawierały "Łódź" a także "ŁÓDŹ". Wyszukiwanie bralo pod uwage jeszcze wiele innych kryteriow wiec nie dalo rady wszystkiego zamknac w jednym sqlu.
Wiec biore SELECT * FROM OBIEKTY.. i dalej jesli cos pasuje to wrzucam do tablicy wynikow.
Porownanie musi byc case insensitive czyli
to nie podziala:
  1. <?php
  2. echo &#092;"Ł \".strtolower(\"Ł\");// wypisze: Ł Ł
  3. ?>

nie dziala tez
  1. <?php
  2. stripos
  3. ?>

  1. <?php
  2.  
  3. if(strcasecmp(&#092;"ŁÓdŹ\",\"ź\")>=0) echo \"MATCH\"; else echo \"NIE MA\";
  4. // wypisze NIE MA
  5.  
  6. ?>


Ale
  1. <?php
  2.  
  3. if(strcasecmp(&#092;"Abc\",\"a\")>=0) echo \"MATCH\"; else echo \"NIE MA\";
  4. // wypisze MATCH
  5.  
  6. ?>


Co tu zrobić??(IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
codo
post
Post #2





Grupa: Zarejestrowani
Postów: 55
Pomógł: 0
Dołączył: 31.10.2004

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


Nie chcialbym dublowac danych w bazie... jest sporo rekordow... Z kolei nie widze mozliwosci napisania takiej funkcji.
Jak to zmienia polskie znaki na '_'?
czyli
  1. SELECT *
  2. FROM TABELA WHERE OPIS LIKE %$szukane% OR OPIS LIKE %$szukane_z_kreskami%


To nie zadziala jak trzeba.. Czy ktos moglbym rozwiazac ten problem? Chyba to nie taki rzadki przypadek, ze chce skorzystac z wyszukiwarki z polskimi znakami ktora bedzie dzialac jesli ktos nie ma polskich znakow...
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: 9.10.2025 - 18:57