![]() |
![]() ![]() |
![]() |
![]()
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ć ? |
|
|
![]()
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
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 |
|
|
![]()
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:
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 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 23.06.2025 - 17:12 |