Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wyszukiwanie danych fraz w rekordzie
mazyl
post 19.02.2013, 16:30:34
Post #1





Grupa: Zarejestrowani
Postów: 139
Pomógł: 2
Dołączył: 2.12.2011

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


Witam!

Mam pewien problem, mianowicie posiadam w bazie dany rekord:
id = 1
tekst = "jakiś tam dłuższy tekst"

i teraz chciałbym aby np pobierając rekord z innej tabeli wyszukało czy w tym rekordzie występuje słowo "tam"

jeżeli jest to aby podmieniło to słowo dodając link, czyli cały rekord przy wyświetlaniu powinien wyglądać mniej więcej tak: "jakiś <a href='url'>tam</a> dłuższy tekst"

ważne jest to aby podmieniło tylko 1 raz wyraz "tam" i przy następnym jego wyświetleniu już nie był w formie linku.

czy wie może ktoś jak to rozwiązać ?
Go to the top of the page
+Quote Post
_Borys_
post 19.02.2013, 17:49:10
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Po wyciągnięciu tekstu z bazy
  1. echo str_replace('tam', '<a href=\'url\'>tam</a>', $tekst);

w bazie powinien być dodatkowy wiersz, jeśli tekst został pobrany to w bazie zaznaczamy, że pobrany i potem przy ponownym pobieraniu sprawdzamy czy pobrany, jeśli tak to normalnie wyświetlamy. W MYSQL jest funkcja REPLACE ale w twoim przypadku to nieistotne bo chcesz aby tylko raz podmieniło.


Ten post edytował _Borys_ 19.02.2013, 18:13:12
Go to the top of the page
+Quote Post
mazyl
post 20.02.2013, 16:58:59
Post #3





Grupa: Zarejestrowani
Postów: 139
Pomógł: 2
Dołączył: 2.12.2011

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


Próbowałem już w ten sposób, wyciągałem za pomocą pętli słowa do zmiany, nastepnie gdy dokonano zmiany zmieniałem wartość z 0 na 1 aby już więcej nie brać pod uwage danego słowa, tylko problem polega na tym że:
  1. str_replace('tam', '<a href=\'url\'>tam</a>', $tekst);

przy wykonaniu automatycznie zamienia wszystkie slowa odrazu.


---- EDIT ----

Udało mi się osiągnąć wymagany efekt przy pomocy preg_replace

wielkie dzięki _Borys_ za pomoc.


Ten post edytował mazyl 20.02.2013, 17:10:32
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 Wersja Lo-Fi Aktualny czas: 23.06.2025 - 21:28