Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wyniki szukania.
moto0095
post
Post #1





Grupa: Zarejestrowani
Postów: 247
Pomógł: 9
Dołączył: 12.03.2010

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


Witam. Szukałem w google jak by co (IMG:style_emoticons/default/winksmiley.jpg)
A więc zrobiłem sobie ostatnio skrypt wyszukiwarki, która przeszukuje plik tekstowy o treści:
Adres do pliku | tytuł | opis

Wyniki wyświetlają się w postaci:
<a href="adres do pliku">tytuł</a> <br> opis

Wyszukiwarka ta przeszukuje tylko opis.
I mam takie pytanko : Jak wyświetlić wyniki szukania w taki sposób:
... słowo słowo szukane-słowo słowo słowo ... (IMG:style_emoticons/default/questionmark.gif)

P.s. Jeżeli były już takie tematy to dajcie linka (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
moto0095
post
Post #2





Grupa: Zarejestrowani
Postów: 247
Pomógł: 9
Dołączył: 12.03.2010

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


Coś to nie za bardzo działa
chodzi mi o to aby wyświetlało się tak
<a href="$adres">Tytuł</a></br>
... jeden dwa trzy szukane jeden dwa trzy ...


(IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif)

Okey, poradziłem sobie:
  1. $plik = "dane.txt";
  2. $dane = file($plik);
  3.  
  4. if ((isset($_POST['szuk'])) AND (trim($_POST['szuk']) != "")) {
  5.  
  6. echo "Szukane słowo: <b>".$search."</b><br /><br />";
  7.  
  8. for($i=0;$i<count($dane);$i++){ /* przeszukuję tablicę */
  9. list($adres[$i], $tytul[$i], $text[$i]) = explode(" | ", $dane[$i]);
  10. }
  11. for($i=0;$i<count($text);$i++){
  12.  
  13.  
  14. $wyraz = $_POST['szuk'];
  15. $tekst = $text[$i];
  16. $t = explode(' ', $tekst);
  17. $k = array_search($wyraz, $t);
  18.  
  19.  
  20. if (strpos($text[$i],$_POST['szuk']) !== false){
  21. echo "<a href='".$adres[$i]."'>".$tytul[$i]."</a><br />";
  22. for($j=-3; $j<4; $j++){
  23. echo "".search_highlight($t[$k+$j], $search)." ";
  24. }
  25. echo "<br />";
  26. }
  27. }
  28. }


plik dane.txt wygląda tak:
  1. index.php | Strona 1 | strona bardzo mila i bardzo ladna i bardzo nie brzydka i bardzo fajna
  2. index2.php | Strona 2 | strona bardzo nie mila i bardzo nie ladna i bardzo brzydka i bardzo nie fajna



i jak wpiszę np. słowo bardzo to wyświetli się:
  1. Strona 1
  2. strona bardzo mila i bardzo
  3. Strona 2
  4. strona bardzo nie mila i


a jak zrobić ,żeby wyświetlało się tak
  1. Strona 1
  2. strona bardzo mila... i bardzo ladna... i bardzo nie brzydka... i bardzo fajna...


(IMG:style_emoticons/default/questionmark.gif)

(IMG:style_emoticons/default/questionmark.gif)

Po prostu jak zrobić tak aby wyświetlało te 3 słowa sąsiadują ce ale do każdego znalezionego słowa (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif) (IMG:style_emoticons/default/questionmark.gif)
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: 7.10.2025 - 03:31