![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 2.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Krótko o co mi chodzi:
mam zapytanie z bazy mySql, które wybiera mi rekordy, gdzie w kolumnie opis znajdzie ciąg zadany z formularza np %Szkoła wyższa% CODE SELECT opis from jakas_tabela WHERE opis like %string z formularza% Mysql domyślnie ignoruje wielkości liter (i bardzo dobrze) Meritum: Chcę znalezione słowo opisu zaznaczać dodatkowym stylem CSS Wpadłem na proste rozwiązanie: CODE str_replace($string_z_formularza, '<span style="color: red;">'.$string_z_formularza.'</span>', $calosc_opisu_z_bazy) Jednak ma to jedną wadę szukane wyrażenie musi "trafić" w wielkość liter jakie są w bazie danych: Czyli - w bazie opis jest np. "test test test test Szkoła Wyższa test test test" Str_replace oczywiście przyniesie skutek (i doda klase CSS) tylko jeżeli będziemy wyszukiwać ze zgodnością wielkości liter: "Szkoła Wyższa" Jeżeli wpiszemy "szkoła wyższa" - niestety (IMG:style_emoticons/default/sad.gif) Mysql zwróci wynik, ale str_replace nie wykona swojego zadania. Prosiłbym o jakiś pomysł jak to najlepiej rozwiązać: W ostateczności możnaby "podnosić" wielkość znaków całego opisu z bazy jak i wyrażenia z formularza, ale to skutkowałoby "podniesieniem" i wyświetleniem całego opisu w wielkich znakach, a tego chciałbym uniknąć. |
|
|
![]() |
![]() ![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 352 Pomógł: 53 Dołączył: 10.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
no przecież podstawiasz $szukana która jest pisana z małej litery oO
musiałbyś zrobić tak wyszukać czy taki ciąg istnieje a nastąpnie pobrać go ze stringa i wstawić to co pobrałeś w to miejsce a nie to co wyszukujesz |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 15:59 |