Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwanie i wyświetlanie rekordu z pola tekstowego
Forum PHP.pl > Forum > Bazy danych > MySQL
zdzis66
Witam.

Przeszukałem to Forum wzdłuż i wszerz...naczytałem się postów na tyle że już sam nie wiem co mam zrobić. A pytanie jest proste, jednak moja znajomość MySql-a marna.

Mój problem.

Utowrzyłem tabelę w bazie danych o nazwie tabela ( w celach edukacyjnych oczywiście)
Tabela ma taką strukturę:

id|kod|miasto|ulica

do tabeli dodałem jeden rekord, następnie utworzyłem plik *php który łaczy mnie z bazą i wyświetla zawarte w tabeli `tabela` dane

Mój problem polega na tym, że w żaden sposób nie mogę zaskoczyć jak powinien wyglądać kod i zapytanie do bazy danych . Chciałbym aby na stronie wyświetlane było pole tekstowe w którym uzytkownik wpisze szukane słowo a następnie aby wynik wyszukiwania był wyświetlony na stronie. Oczywiście do tego należałoby dołożyć przycisk np. Szukaj lub Pokaż

Z góry dziękuję za pomoc
Pozdrawiam
maverickkk
Dotarłem do pierwszego tematu o wyszukianiu i dalej mi się już nie chciało

http://forum.php.pl/index.php?showtopic=19...1&st=&p=&#entry

Ogólnie chodzi oto że robisz.

1. Formuarz z polami na wpradzenie tekstu i przyciskami coś jak
  1. <form action="index.php" method="post" >
  2. <input type="text" name="acces2/>
  3. <input type="submit" name="przycisk" value="Loguj"/>
  4. </form>

2. Zawartosc zmiennych wstawiasz do zapytania do bazy danych coś jak
  1. <?php
  2. $wykonaj = mysql_query ("select * from tabela order by $_POST['$acces2'] DESC");
  3.  while($wiersz=mysql_fetch_array($wykonaj))
  4. echo $wiersz[0];
  5. ?>


Pisałem z głowy.
zdzis66
starałem się starałem się i nadal się staram...ale klops mi z tego wychodzi.....może ktoś jeszcze ma inne rozwiązanie ?
maverickkk
To już powiina działać we wcześniejszym było dużo błędów jeśli to wogóle kodem można nazwać.

Teraz powinno jakoś szukać.

  1. <?php
  2. $ip="127.0.0.1"; // IP hosta
  3. $login="root"; // Login do bazy mysql
  4. $haslo="krasnal"; // hasło -||-
  5. $baza="dane"; // baza danych 
  6. $tabela="tabela"; // tabela w bazie
  7. $szukaj=$_POST['szukaj'];
  8.  
  9.  echo "Szukane słowo".$szukaj."<BR><BR>";
  10.  
  11.  mysql_connect ($ip,$login,$haslo);
  12.  mysql_select_db($baza);
  13.  
  14.  echo "Wynik szukania:<BR>";
  15.  
  16.  $wykonaj = mysql_query ("select * from $tabela where autor = '$szukaj'");
  17.  while($wiersz=mysql_fetch_array($wykonaj))
  18. echo $wiersz[1]."<br>";
  19. ?>
  20. <form action="test.php" method="post" >
  21. <input type="text" name="szukaj" /> 
  22. <input type="submit" name="przycisk" value="Loguj"/>
  23. </form>


nazwa pliku test.php, zróćuwage na nazwe BD, tabel, pól i dostosuj do wymagań.
zdzis66
no teraz już się ruszyło i jest OK, to znaczy zapytanie i cała reszta działa, jednak nie wyświetla danych podaje jedynie słowo jakiego szukam. Nie wyświetla natomiast wyniku zapytania.


W tabeli jest tylko jeden rekord.
  1. <?php
  2. $ip="xxxxxx"; // IP hosta
  3. $login="xxxxxx"; // Login do bazy mysql
  4. $haslo="xxxxx"; // hasło -||-
  5. $baza="xxxxx"; // baza danych 
  6. $tabela="tabela"; // tabela w bazie
  7. $szukaj=$_POST['szukaj'];
  8.  
  9.  echo "Szukane słowo".$szukaj."<BR><BR>";
  10.  
  11.  mysql_connect ($ip,$login,$haslo);
  12.  mysql_select_db($baza);
  13.  
  14.  echo "Wynik szukania:<BR>";
  15.  
  16.  $wykonaj = mysql_query ("select * from $tabela where miasto = '$szukaj'");
  17.  while($wiersz=mysql_fetch_array($wykonaj))
  18. echo $wiersz[1]."<br>";
  19.  
  20. <form action="test.php" method="post" >
  21. <input type="text" name="szukaj" /> 
  22. <input type="submit" name="przycisk" value="Loguj"/>
  23. </form>
  24. ?>
zdzis66
do po przedniego postu

  1. <?php
  2. echo "Szukane slowo".$szukaj."<BR><BR>";
  3.  
  4.  mysql_connect ($ip,$login,$haslo);
  5.  mysql_select_db($baza);
  6.  
  7.  echo "Wynik szukania:<BR>";
  8.  
  9. $wykonaj = mysql_query ("select * from $tabela where nazwa = '$szukaj'");
  10. linia kodu 26. while($wiersz=mysql_fetch_array($wykonaj))
  11.  {
  12. echo $wiersz['nazwa'];
  13. }
  14. ?>
  15. <form action="test.php" method="post" >
  16. <input type="text" name="szukaj" /> 
  17. <input type="submit" name="przycisk" value="Znajdź"/>
  18. </form>



sprawdzałem czy kod jestnapisany poprawnie i według wszelkich reguł ( jakie znalazłem ) jest poprawnie, natopmiast wywala mi taki błąd

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/zdzis66/ftp/test.php on line 26

Co tu jest nie tak....motam się z tym już od kliku dni a jako że jestem już dość stary to i nauka oraz zrozumienie tego ciężej wchodzi mi do głowy
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.