![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 5.01.2008 Skąd: Czwarty Świat Ostrzeżenie: (0%) ![]() ![]() |
Hi all!
Przechodząc od razu do sedna sprawy - piszę skrypt wyszukiwarki. Mam już prawie wszystko gotowe, jednak próbuję uzyskać taki efekt: Link z nazwą podstrony ...kawałek treści wyszukiwana fraza kawałek treści... adres podstrony I mam problem właśnie z tym "kawałek treści". Jak zrobić, żeby wyświetlało powiedzmy, 40 znaków / 5 słów przed szukaną frazą i tak samo po niej? Pozdrawiam, Leo van Damon Ten post edytował leovandamon 4.08.2008, 14:00:33 -------------------- Mój blog: http://test.dragonsheart.eu/
DH Corp: http://www.dhcorp.pl/ |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 616 Pomógł: 12 Dołączył: 16.07.2006 Skąd: : getCity ( ); Ostrzeżenie: (0%) ![]() ![]() |
hmmm, np możesz sobie wstawić explode na jakiś znak który często się powtarza
-------------------- Jeśli my czegoś nie zrobimy, zrobią to za nas inni
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 5.01.2008 Skąd: Czwarty Świat Ostrzeżenie: (0%) ![]() ![]() |
Zapomniałem dopisać. Najczęściej powtarza się spacja, jednak tablica z explodezawierałaby parę tysięcy elementów.
Próbowałem z strstr i stristr, jednak, gdy zgodnie z manualem dodawałem trzeci parametr, otrzymywałem błąd. -------------------- Mój blog: http://test.dragonsheart.eu/
DH Corp: http://www.dhcorp.pl/ |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 662 Pomógł: 45 Dołączył: 26.03.2007 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
@jarmiar - Aleś wymyślił LOL.
Do ucinania tekstu służy funkcja substr(). Możesz obliczyć kolejność szukanego tekstu i na nim wyświetlić tekst wstecz i tekst po. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 5.01.2008 Skąd: Czwarty Świat Ostrzeżenie: (0%) ![]() ![]() |
Sprawdzam...
Nie, wciąż to nie to. Opiszę to inaczej. Mam zmienną $tresc zawierającą treść podstrony. Mam zmienną $query zawierającą tekstowe zapytanie usera. Chcę znaleźć w zmiennej $tresc pierwsze wystąpienie $query, wyświetlić kilka słów przed nim i kilka po nim, przy czym pogrubić $query. (Sorry, że nie napisałem tego na początku). -------------------- Mój blog: http://test.dragonsheart.eu/
DH Corp: http://www.dhcorp.pl/ |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 403 Pomógł: 68 Dołączył: 20.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Pisane z głowy ale powinno zadziałać Ten post edytował f1xer 4.08.2008, 13:32:22 -------------------- Pomogłem? wyraź to i kliknij "Pomógł"
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 5.01.2008 Skąd: Czwarty Świat Ostrzeżenie: (0%) ![]() ![]() |
Działa po drobnej modyfikacji (olśnienie
![]() Kod $pozycja = strpos($tresc, $query); $tresc = substr($tresc,$pozycja-50,strlen($query)+100); $tresc = str_replace($query, '<b>'.$query.'</b>', $tresc); Na początku wyświetlało tylko tekst sprzed $query. Zastanawiając się czemu i przeglądając jeszcze raz manual dowiedziałem się czemu. Cytat substr($s,$o,$l) - Funkcja zwraca podciąg ciągu $s, począwszy od indeksu $o, składający się z $l liter A ja miałem to cały czas przed nosem, jak wół wypisane... Załamka... No nic, dzięki serdeczne. Widać, że są na tym świecie ludzie, którzy chętnie pomogą innym... EDIT: O, zmieniłeś. ^^ Pozdrawiam, Leo van Damon. Ten post edytował leovandamon 4.08.2008, 13:52:35 -------------------- Mój blog: http://test.dragonsheart.eu/
DH Corp: http://www.dhcorp.pl/ |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 403 Pomógł: 68 Dołączył: 20.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
skoro już to masz za sobą to polecam zmienić coś w tym kodzie
![]() -------------------- Pomogłem? wyraź to i kliknij "Pomógł"
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 41 Pomógł: 3 Dołączył: 5.01.2008 Skąd: Czwarty Świat Ostrzeżenie: (0%) ![]() ![]() |
Na jakiś czas udostępniam obecną wersję projektu, do którego potrzebny był ten właśnie kod - http://bit.nightdream.kicks-ass.org:8080/.
I jeszcze raz, serdeczne dzięki. Pozdrawiam, Leo van Damon -------------------- Mój blog: http://test.dragonsheart.eu/
DH Corp: http://www.dhcorp.pl/ |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.06.2025 - 09:13 |