Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Szukacz
Forum PHP.pl > Forum > Gotowe rozwiązania
senny
Witam,
Prowadze serwis Green Day Polska! i mam cholerny klopot z szukaczem. Probowalem juz roznych skryptow i nic nie wychodzi. Eh.. czy moglby sie ktos podjac zrobienia szukacza na mojej stronie... mysle ze wiekszosci z was nie sprawi to wiekszego problemu, a mi by wiele pomoglo. Za pomoc nie moge zaoferowac raczej nic... no chyba ze ktos interesuje sie tego typu muzyka... albo jezeli ma swoja strone muzyczna to moge zalatwic miejsce w serwisie Bimber.pl.

Pozdrawiam

PS.
Tylko prosze nie pisac co i jak powinienem zrobic.. to wiele nie pomoze;) Mowiac dosadnie... oczekuje ze ktos wykona brudna robote za mnie;)
Ive
a texty trzymasz w mysql [lub innej bazie tego typu] czy w plikach? bo z mysql to wielkiego problemu nie ma by stworzyć prostą wyszukiwarkę, a z plikami to nie wiem ale chyba jest więcej zabawy ;]
senny
no wlasnie o to chodzi ze w plikach :]
Ive
znalazłem ten kod na dysku [ na pewno nie jest mój i nie wiem czyj jest ;] ]:
  1. <?
  2. if(empty($szukaj)) {
  3.  
  4. echo&#092;"<script language=\"Javascript\\">\";
  5. echo&#092;"function clearText(thefield){if (thefield.defaultValue==thefield.value)thefield.value = \"\\"}\";
  6. echo&#092;"</script>\";
  7. echo&#092;"<form method=post action=\"index.php?x=wyszukaj\\">\";
  8. echo&#092;"Wyszukiwarka (powinieneś wiedzieć jak tego używać biggrin.gif ):\";
  9. echo&#092;"<input type=text name=szukaj value=\"wpisz szukany wyraz(y)...\\" size=25 onFocus=clearText(this)><br>\";
  10. echo&#092;"Szukaj w:<br>\";
  11. echo&#092;"<select name=gdzie><option value=emulator>Emulatory</option><option value=gry>Gry</option><option value=recenzje>Recenzje</option></select>\";
  12. echo&#092;"<br> <input type=submit value=Szukaj>\";
  13. echo&#092;"</form>\";
  14.  
  15. } else {
  16.  
  17. function emulator($szukaj) {
  18.  
  19. $plik_tablica = &#092;"emu/spis.emu\";
  20. $tablica = @file($plik_tablica);
  21. foreach($tablica as $k=>$v) {
  22.  
  23. if (strpos($v, $szukaj) !== false){
  24.  
  25. $t = explode('||', $v);
  26. $z[] = &#092;"<a href=\"download.php?x=emu&podsw=\".$t[0].\"\">\".$t[0].\"</a> - dodane przez \".$t[2].\"n\";
  27.  
  28. }
  29.  
  30. }
  31.  
  32. if($z==&#092;"\") {
  33.  
  34. echo&#092;"Nic nie znaleziono\";
  35.  
  36. } else {
  37.  
  38. echo (&#092;"Znalezione:<br />\");
  39. echo (implode(&#092;"<br />\", $z));
  40. echo (&#092;"<hr>\");
  41.  
  42. }
  43.  
  44. }
  45.  
  46. function drzewko($folder) {  
  47.  
  48. global $pliki;
  49.  
  50. if($folder != &#092;"/recenzje/\") {
  51.  
  52. $folder .= &#092;"/\";
  53.  
  54. }
  55.  
  56. $id_f = opendir($folder);
  57.  
  58. if($id_f) {
  59.  
  60. while($plik = readdir($id_f)) {
  61.     
  62. if($plik == '.' || $plik == '..') {
  63. continue;
  64.  
  65. }
  66.  
  67. if(is_dir($folder . $plik)) {
  68.  
  69. drzewko($folder . $plik);
  70.  
  71. } else {
  72. $pliki[] = $folder . $plik;
  73.  
  74. }
  75.  
  76. }
  77.         
  78. closedir($id_f);
  79. }
  80. return $pliki;
  81. }
  82.  
  83. function czytelne($spis) {
  84.  
  85. $rozszerzenie[] = &#092;"txt\"; //twoje rozszerzenie plików
  86.  
  87. foreach($rozszerzenie as $roz) {
  88.  
  89. $dl_roz = strlen($roz);
  90.  
  91. foreach($spis as $plik) {
  92.  
  93. if(substr($plik, -$dl_roz) == $roz) {
  94.  
  95. $wynik[] = $plik;
  96.  
  97. }
  98. }
  99. }
  100.  
  101. return $wynik;
  102.  
  103. }
  104.  
  105. function recenzje($szukaj) {
  106.     
  107. if(isset($szukaj) && $szukaj != '') {  
  108.  
  109. $szukaj = ereg_replace(&#092;"[*.$/]\", \"\", $szukaj);  
  110. $szukane_slowa = split(&#092;" \", $szukaj);  
  111. array_unshift($szukane_slowa, $szukaj);  
  112. $ile_slow = count($szukane_slowa);  
  113. unset($szukane);  
  114.  
  115. $pliki = drzewko(&#092;".\");  
  116. $czytelne = czytelne($pliki);  
  117. unset($pliki);  
  118. sort($czytelne);  
  119.  
  120. foreach($czytelne as $plik) { 
  121.                  
  122. $id_pliku = fopen($plik, &#092;"r\");  
  123. $zawartosc = fread($id_pliku, filesize($plik));
  124.  
  125. for($i=0; $i < $ile_slow; $i++) {
  126.  
  127. if(ereg($szukane_slowa[$i], $zawartosc)) {
  128.  
  129. $trafienia[] = $plik;
  130.  
  131. }
  132.  
  133. }
  134.  
  135. fclose($id_pliku);  
  136.  
  137. }
  138.  
  139. if(!isset($trafienia)) {
  140.  
  141. echo &#092;"Niestety nie znaleziono nic co by pasowało do twojego zapytania\";
  142.  
  143. } else {  
  144.  
  145. $trafienia = array_unique($trafienia);  
  146. sort($trafienia);  
  147.  
  148. foreach($trafienia as $pojedyncze) {  
  149.                     
  150. $czesc = explode(&#092;"/\", $pojedyncze);
  151.                     
  152. echo&#092;"<a href=recenzje.php?ktory=$pojedyncze&podsw=$szukaj>$czesc[3]</a><br>\";  
  153.  
  154. }  
  155.  
  156. }  
  157.  
  158. }
  159.         
  160. }
  161.     
  162. switch($gdzie) {
  163.         
  164. case &#092;"emulator\":
  165. emulator($szukaj);
  166. break;
  167.         
  168. case &#092;"recenzje\":
  169. recenzje($szukaj);
  170. break;
  171.         
  172. }
  173.     
  174. }
  175.  
  176. ?>

mozesz go sobie dostosować do własnych potrzeb jeśli tylko znasz choć troszke php ;] mi ta wyszukiwarka całkiem nieźle działała

[EDIT]
musisz sobie pozamieniać te krzaki na (to forum jest lekko wkurzające pod tym względem mad.gif ):
& # 0 9 2 ; = \ [ukośnik]
& # 3 3 ; = ! [wykrzyknik]
senny
ok, wielkie dzieki, zaraz sie zajme tym;)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.