![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 23.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam problem ponieważ chcę zrobić prostą wyszukiwarkę. Ma znajdywać wartość z jednej tabeli ale chciałbym żeby użytkownik mógł wybierać po jakim z trzech pól chce szukać
Zrobiłem tak: Formularz: Ale nie wiem jak ująć to w zapytaniu (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) . Gdzie i jak umieścić pola z option, żeby select wiedział jaką kolumnę przeszukać?
Ten post edytował Sublove 23.01.2009, 09:43:04 |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Nie sadze ze ty napisales ten kod skoro tego nie wiesz.
Kod $pole='nazwa'; // dodatkowe zabezpiecznie przed sql injection if(isset($_POST['kryteria']) && in_array($_POST['kryteria'], array('nazwa','model','producent_c'))) { $pole=$_POST['kryteria']; } i teraz $pole wrzucasz w miejsce "nazwa" w twoim zapytaniu. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 23.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Napisałem to sam, przeszukując forum udało mi się zrobić prostą wyszukiwarkę która szuka ale po wszystkich kolumnach. Tutaj napisałem to co wiedziałem, żeby zacząć... próbuję ale się zaciąłem, naprawdę (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Czyli ta lista jest zbędna tak?
gdzie dokładnie wstawić podany przez Ciebie kod? Tutaj? :
Ten post edytował Sublove 23.01.2009, 09:58:27 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Kod $query = "SELECT p, nazwa, kategoria, marka, model, producent, roczniki FROM parts WHERE '.$pole.' LIKE '%".$haslo."%' ORDER BY p"; Połącz to z tym co wcześniej ci podałem. Ten post edytował wookieb 23.01.2009, 09:57:26 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 23.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Bardzo Ci dziękuję za zainteresowanie ale nadal mam problem, otóż nieważne co wpiszę zawsze rezultatem jest cała tabela... Zrobiłem tak:
Ten post edytował Sublove 23.01.2009, 10:05:20 |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
To teraz ci nie dam rozwiazania tylko link do funkcji. Bedziesz mial okazje sie wykazac ;>
http://php.net/implode |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 23.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Przeczytałem i nadal nie mam pojęcia gdzie jest błąd...(
Rozumiem idee tego co napisałeś, tablica, potem sprawdzanie z tego co zostało przypisane do $pole itp. Problem w tym, że analizując kod, nie mogę wpaść na to gdzie leży błąd. Wsztstko wygląda na prawidłowe... Oświeć mnie proszę bo już mi ręce opdły... Może jednak jakaś wskazówka w moim kodzie... tak dla zachęty (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Może jakaś literówka mi się zdażyła? Proszę o pomoc, bardzo mi zależy na tym Przejrzałem ten kod już na wylot.... i nie wiem co jest, wywala mi błąd: Kod [b]Warning[/b]: pg_fetch_row() [[url="http://gandalf.mac.edu.pl/~tomczak/function.pg-fetch-row"]function.pg-fetch-row[/url]]: Unable to jump to row 0 on PostgreSQL result index 3 in [b]/home/informatyka/2004/19dr-q-1/tomczak/public_html/czesciosobowe2.php[/b] on line [b]74[/b]
|
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Wywal argument $row z pg_fetch_row. Nie jest konieczny.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 23.01.2009 Ostrzeżenie: (0%) ![]() ![]() |
Teraz za każdym razem zwraca mi pustą tabelę... błędów nie wyświetla ale wyników też nie. Cholera, co jeszcze spaprałem?
|
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Spróbujmy tak
Kod for($i=0;$i<$numrows, $i++) { $myrow = pg_fetch_row ($result); printf ("<tr><td height=30 >%s</td> <td height=20 >%s</td> <td height=20 >%s</td> <td height=20 >%s</td> <td height=20 >%s</td> <td height=20 >%s</td> <td height=20 >%s</td> </tr>", $myrow[0], $myrow[1], $myrow[2], $myrow[3], $myrow[4], $myrow[5], $myrow[6]); } Sprawdz jeszcze tylko jaka jest wartosc $numrows. Ten post edytował wookieb 23.01.2009, 16:01:27 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 15:13 |