Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]wyszukiwarka wlasnej roboty - problem z kodowaniem
Forum PHP.pl > Forum > Przedszkole
hyhyhy
Witam,

No więc tak, napisalem sobie skrypt, ale nie chce juz w PSPad zaznacza mi wyrazenie $wyrazy['$i'] jako jedną zmienną - a to ma być tablica. Czy mógłby mi ktoś podpowiedzieć, co trzeba zmienić?

  1. <?php
  2.  
  3.  
  4. $wyrazenie_z_wyszukiwarki = $_POST['szukaj'];
  5. $wyrazenie_trimmed = trim($wyrazenie_z_wyszukiwarki);
  6. $wyrazenie_gotowe = strtolower($wyrazenie_trimmed);
  7.  
  8. echo "$wyrazenie_gotowe"; //robocze wyswietlenie wyrazenie - kontrola na potrzeby kodowania
  9.  
  10. $wyrazy = explode (" ", $wyrazenie_gotowe); //$wyrazy powinny byc tablica asocjacyjna
  11. $liczba = count($wyrazy); //podliczenie wyrazow, zeby wiedziec ile razy szukac
  12.  
  13. //--------------------------------------POLACZENIE Z BAZA-------------------------
  14.  
  15. $tablica = $_POST['dzial'];
  16. for ($i=0;$i=$liczba;$i++)
  17. {
  18. $result = mysql_query("select * from `$tablica` WHERE `nazwa` like '%$wyrazy['$i']%'");
  19. while ($row = mysql_fetch_assoc($result)) {
  20. echo $row["cel"];
  21. echo $row["nazwa"];
  22. echo $row["opis"];
  23. echo $row["kontakt"];
  24. echo $row["link"];
  25. echo "<br />";
  26. }
  27.  
  28.  
  29. }
  30.  
  31. ?>


no i w tej linii 18 wywala mi blad edit// tutaj to jest linia 18, bo wyrzucilem poalczenie z baza z kodu
unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
przy czym to raczej nic dziwnego, bo tam jest to zamieszanie z apostrofami o ktorym pisze
kadlub
a daj tak
  1. '%$wyrazy[$i]%'


a jak nie to w klamerki
  1. '{%$wyrazy['$i']%}'
  2.  
hyhyhy
Po chwili obserwacji wydaje mi się, że ta wyszukiwarka jest ciężkostrawna dla mojego serwera, albo on ma jakiś problem. No zobaczę później jak to działa.
kadlub
a zrób echo $liczba może ten for go zapętla a zamiast $i=$liczba w for daj np $i=4
gargamel
  1. $result = mysql_query("SELECT * FROM '$tablica' WHERE 'nazwa' like '%".$wyrazy[$i]."%'");


Wklej to.

Przedewszystkim $i nie powinno być w ''


Edit :

W warunku pętli masz błąd
  1. for ($i=0;$i=$liczba;$i++)


Powinno byc chyba
  1. for ($i=0;$i<$liczba;$i++)

hyhyhy
Dzieki bardzo za pomoc, zaraz przetestuje, bo znów to odpaliłem i serwer potrzebuje lekkiego odpoczynku No ale chyba najpewniej będzie szukac $wyrazy[0] do [4], i tak wiecej nikt nie wpisze, bo na okienko szukaj dam maxlength=20 smile.gif albo przestudiuje sobie ta petle bo chyba tam sie cos dzieje niedobrego

EDIT:
oo, dzieki, wlasnie nie bylem tego pewny smile.gif
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-2025 Invision Power Services, Inc.