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
piotr94
post
Post #2





Grupa: Zarejestrowani
Postów: 331
Pomógł: 30
Dołączył: 11.11.2008
Skąd: Kraków

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


  1. $keywords_tabb=preg_replace(array('|^ +|','| +$|','| +|','|[óÓoO]{2}|','|[ąĄaA]{2}|','|[śŚsS]{2}|','|[łŁlL]{2}|','|[żŻzZ]{2}|','|[źŹzZ]{2}|','|[ćĆcC]{2}|','|[ńŃ]{2}|'),array('','','|-|','[oOÓó]+','[ąĄAa]+','[śŚSs]+','[łŁLl]+','[ŻżzZ]+','[źŹzZ]+','[ćĆcC]+','[ńŃnN]+'),$_SESSION['usearch_keywords']);
  2. ...
  3. $keywords_match_where.="LOWER(keywords) REGEXP LOWER('.*$val_k.*') OR LOWER(desc_pl) REGEXP LOWER('.*$val_k.*') OR LOWER(ofert_pl) REGEXP LOWER('.*$val_k.*') OR LOWER(name) REGEXP LOWER('.*$val_k.*') OR ";

fragment na żywca z kodu jednej mojej strony, rozgryź resztę sam i zmodyfikuj odpowiednio
EDIT : przystosowałem nieco do Twoich celów, ale nie wiem czy nie będzie pewnych drobnych problemów, bo nie mam za bardzo czasu, żeby przetesotwać

Ten post edytował piotr94 17.09.2010, 18:33:44
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: 4.10.2025 - 09:08