Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Wyszukiwarka na stronie - wyszukiwanie z treści podstron
BatGraf
post 29.12.2007, 14:17:11
Post #1





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


Witajcie Wszyscy Życzliwi smile.gif

Od pół dnia morduję się ze wstawieniem różnych skryptów na stronę, które miały być wyszukiwarką treści na stronie głównej i podstronach.

Domyślam się, że ten temat mógł być już wałkowany, ale zaklinam - nie znalazłem tego czego szukam.

Bardzo proszę po pomoc (nie gotowca);

1. Jakiego skryptu szukać ? - nie musi byc z mysql, wystarczy, że przeszuka podstrony pod kątem treści i wyrzuci na nowej stronie linki.
2. Gdzie mogę znależć - skryptu lub tutoriala? Przeszukałem sporo bardziej znaczących stron. Całkiem dobry opis znalazłem na algorytmach, ale coś mi to nie wychodzi. Z innymi mam kłopot językowy smile.gif - nie znam EN smile.gif (tylko nie krzyczcie, żebym się uczył smile.gif - wiem). Może jest jakiś sympatyczny opis po polsku.


Z algorytmów próbowałem tego:

  1. <?
  2. function szukanie($szukane) {
  3.  
  4. $szukaj = explode(" ", $szukane);
  5.  
  6. $sciezki[] = "artykuly/";
  7. $sciezki[] = "porady/";
  8. $sciezki[] = "./";  // katalog, w którym jest skrypt
  9. $roz = ".txt|.html|.htm";
  10.  
  11. for ($i=0;$i<count($sciezki);$i++) {
  12. $katalog = opendir($sciezki[$i]);
  13. while ($plik = readdir($katalog)) {
  14. if ($plik<>"." and $plik<>".." and !is_dir($sciezki[$i].$plik)) {
  15. if (eregi("($roz)($)",$plik)) $lista[] = $sciezki[$i].$plik;
  16. }
  17. }
  18. closedir($katalog);
  19. }
  20.  
  21.  
  22. $ile = count($lista);
  23. for ($i=0;$i<$ile;$i++) {
  24. $f = fopen($lista[$i], "r");
  25. $zawartosc = fread($f, filesize($lista[$i]));
  26. fclose($f);
  27. $jest = "tak";
  28. $ileszuk=count($szukaj);
  29. for ($j=0;$j<$ileszuk;$j++) {
  30. preg_match_all("/".$szukaj[$j]."/i", $zawartosc, $li);
  31. if (count($li[0])<1) {$jest="nie"; break;}
  32. }
  33. if ($jest=="tak") $sa[] = $lista[$i];
  34. }
  35.  
  36.  
  37. $ile = count($sa);
  38. if ($ile>0) {
  39. sort($sa);
  40. for ($i=0;$i<$ile;$i++) {
  41. echo "<br /><a href=\"".$sa[$i]."\">" . $sa[$i]. "</a>";
  42. }
  43. }
  44. }
  45.  
  46.  
  47. $szukane = $_GET["szukane"];
  48.  
  49. if ($szukane<>"") { szukanie($szukane); }
  50. else {echo "nie ma co szukać!"; }
  51. ?>


system plików na serwerze ma mniej więcej tak:

katalog
index.php
/podstrony/
/podstrony/kontakt/

skrypt wstawiałem w index.php a dwie przykładowe ścieżki zmieniłem na /podstrony i podstrony/kontakt


Z góry ogromne dzięki. smile.gif


--------------------
_____________________________________________________

Pierwszy Tutorial - :)
Drugi tutorial :)
Trzeci tutorial :)

A wszystkie trzy - jak usmiechnąć się do siebie :)
Go to the top of the page
+Quote Post
sagittariuspl
post 29.12.2007, 15:44:05
Post #2





Grupa: Zarejestrowani
Postów: 374
Pomógł: 3
Dołączył: 30.12.2006
Skąd: co skąd?

Ostrzeżenie: (10%)
X----


dobra, powiedz co w tym kodzie Ci nie działa. powiedz jakie to podstrony, bo moze lepiej napisać jakiegoś robota, który powyciga treści ze strony i je zapisze w bazie. jeśli chodzi o same szukanie w plikach to Twoja droga wydaje się słuszna, lae napisz co Ci tu nie pasuje


--------------------
Tylko sprawdzone typy bukmacherskie na BetGen.pl
Potrzebujesz konta bankowego? Nie? Każdy potrzebuje. Porównaj konta i wybierz najlepsze dla siebie
Zostań milionerem zaczynając od zbierania truskawek. Każdy może być bogaty - to nie mit.
Go to the top of the page
+Quote Post
BatGraf
post 29.12.2007, 15:57:48
Post #3





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


Chciałem, zeby na stronie głównej był formularz/okienko do wpisania np ceny pokoi (strona hotelu) - wyniki wypadałoby, żeby pokazało już w nowej stronie. Ten skrypt wyświetla mi tylko "nie ma co szukać!" czyli wyswietla komunikat, który jest w razie jak niczego nie znajdzie.

Byki (wg mnie i przeze mnie):

1. gdzieś coś źle "podłączyłem" [niewłasciwe ścieżki do plików, które miałyby być przeszukiwane] i wygląda na to, ze nie ma czego przeszukiwać)
2. brak wyobraźni, wiedzy (bo checi mam smile.gif ), zeby przekierować to wszystko na nową stronę z wynikami

W sumie nie chcę opierać się na sql, bo sama wyszukiwarka, to jak na razie duzy cios dla moich szarych komórek.
Może poszukać czegos podobnego w JS ? Tylko, że znalazłem skrypcik (w js), który jedynie zaznacza słowa na stronie


--------------------
_____________________________________________________

Pierwszy Tutorial - :)
Drugi tutorial :)
Trzeci tutorial :)

A wszystkie trzy - jak usmiechnąć się do siebie :)
Go to the top of the page
+Quote Post
sagittariuspl
post 29.12.2007, 16:05:49
Post #4





Grupa: Zarejestrowani
Postów: 374
Pomógł: 3
Dołączył: 30.12.2006
Skąd: co skąd?

Ostrzeżenie: (10%)
X----


  1. <?php
  2. $sciezki[] = "./";
  3. ?>
zamień na ścieżkę (w moim przypadku to by było /var/www/katalog/ a jeżeli używasz np. krasnala to będzie jeden z podkatalogów C:\usr) i chyba zapomniałeś, że skrypt wykonuje się linkiem np. katalog/index.php?szukane=fraza -> gdzie fraza to słowo do wyszukania a 'szukane' to parametr przekazywany w get - nie ma tego, pokazuje, ze nie ma czago szukać


--------------------
Tylko sprawdzone typy bukmacherskie na BetGen.pl
Potrzebujesz konta bankowego? Nie? Każdy potrzebuje. Porównaj konta i wybierz najlepsze dla siebie
Zostań milionerem zaczynając od zbierania truskawek. Każdy może być bogaty - to nie mit.
Go to the top of the page
+Quote Post
BatGraf
post 29.12.2007, 16:12:02
Post #5





Grupa: Zarejestrowani
Postów: 182
Pomógł: 0
Dołączył: 20.03.2007
Skąd: Kruklanki/Otwock

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


hmmm smile.gif coś z grubsza połapałem smile.gif Pliki są już na serwerze a dokładnie w katalogu głównym jest katalog "strony/wypoczynek/index.php" Wstawiałem właśnie w to miejsce nawet ścieżkę bezwzgledną podając "http://www.arecki.home.pl/strony/wypoczynek/index.php" ale nie pomogło.

(adres strony żeby nie było, że nie wyświetla obrazków to www.mazury-wypoczynek.pl ) smile.gif

Ten post edytował BatGraf 29.12.2007, 16:15:03


--------------------
_____________________________________________________

Pierwszy Tutorial - :)
Drugi tutorial :)
Trzeci tutorial :)

A wszystkie trzy - jak usmiechnąć się do siebie :)
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: 19.07.2025 - 02:36