Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyszukiwarka zaawansowana
Forum PHP.pl > Forum > Przedszkole
sandei
Witam wszystkich forumowiczów.
Od razu przepraszam za drugi temat, ale już dostałem link z aktywacją konta i mogę w takiej formie napisać temat, żeby nikt później nie mówił, że mam zrobić konto. smile.gif
Jestem początkującym użytkownikiem php.
Robię stronę pewnej osobie i potrzebuje wyszukiwarkę do niej.
I tutaj cały problem. Nie potrafię zrobić takiej wyszukiwarki jaka jest na http://www.autofelgi.pl/index.php
Tam po wpisaniu kriteriów szukania, wyświetlane są wyniki po ok. 10 na stronie.
Czy ktoś potrafi mi pomóc i opisać jak takie "cacko" zrobić ? Z góry bardzo dziękuję wszystkim starającym się pomóc. smile.gif winksmiley.gif
hwao
  1. SELECT * FROM `auta` WHERE `auto` = '$_POST['auto']' AND `felgi` = '$_POST['felgi']' AND `sruby' = '$_POST['sruby']'

Oczywiscie całość nalezy odpowiednio zabezpieczyc (filtracja danych).

No i dodac Stronicowanie - http://phpedia.pl/wiki/Stronicowanie
sandei
Może to trochę dziwnie zabrzmi, ale co muszę oprócz wyżej wymienionych rzeczy zrobić ? smile.gif
A może ktoś mógłby to za mnie zrobić ? :roll2:
Cysiaczek
Jasne laugh.gif umieść w dziale praca oferowana. To jest forum do nauki i pomocy przy niej, a nie rynek niewolników biggrin.gif .
Hwao podał Ci zapytanie SQL - wywołaj je np. z poziomu skryptu php, przetwórz i wyświetl.
Informacje o sposobach operowania na bazie danych za pomocą php znajdziesz tutaj

Pozdrawiam.
sandei
Cysiaczek troche źle mnie zrozumiałeś. Ja poprostu nie wiem jak to zrobić. I licze na pomoc a nie wykorzystywanie kogokolwiek.

Mógłby mi ktoś to wytłumaczyć krok po kroku ? smile.gif Chodziło by mi o wszystko od początku. Przepraszam, że jestem troche natrętny, ale robię stronę "szefowi" i chciałbym, żeby wszystko działało. smile.gif
hwao
Dobra nie bede pisał zbednych komentarzy winksmiley.jpg

1. Tworzysz formularz
- pole auto
- pole felgi
- pole sruby
2. Sprawdzasz czy zostało cos wyslane w formularzu (tym z auto felgi i sruby)
3. Zostalo wykryte, filtrujesz dane przeslane przy pomocy np mysql_escape_string" title="Zobacz w manualu php" target="_manual()
4. Składasz SQL
  1. <?php
  2. $sSql = 'Select * from `auta` Where ';
  3. $aWhere = array();
  4. if( isSet( $_POST['auto'] ) ) { $aWhere[] = '`auto` = ''.mysql_escape_string( $_POST['auto'] ); }
  5. if( isSet( $_POST['felgi'] ) ) { $aWhere[] = '`felgi` = ''.[b]mysql_escape_string[/b]( $_POST['felgi'] ); }
  6. if( isSet( $_POST['sruby'] ) ) { $aWhere[] = '`sruby` = ''.mysql_escape_string( $_POST['sruby'] ); }
  7. $sSql .= join( ' and ', $aWhere );
  8.  
  9. $rQuery = mysql_query( $sSql );
  10. while( $aRow = mysql_fetch_assoc( $rQuery ) ) {
  11. print_r( $aRow );
  12. }
  13. ?>
sandei
Kurcze bardzo głupio mi ale..... jak zrobić ten formularz questionmark.gif
Ps. Widać jaką mam wiedzie na ten temat sad.gif
dawhol
znasz wogóle htmla ? chociaz bo do formularza to on wystarcza ;/

  1. <form name="Szukaj" action="szukaj.php" method="post">
  2. <input type="text" name="auto" size="20" /><br />
  3. <input type="text" name="sruby" size="20" /><br />
  4. ...
  5. <input type="submit" name="send" value="szukaj" /></form>


a w pliku szukaj.php dajesz to co napisał kolega wyrzej smile.gif

w miejsce ... dajesz nastempne pola input ;p czyli kryteria szukania
sandei
Dzięki wszystkim za pomoc. A więc mam już ten formularz i szukaj.php na którym znajduje się ten kod. Teraz o co chodzi w punkcie nr 3 questionmark.gif sad.gif
Ps. Jeżeli mam już skończyć pisać o tej "felernej" wyszukiwarce to piszcie... ehh.
Ps2. Strona która robię to: http://www.autofelgi.yoyo.pl
My4tic
Hwao podał Ci wszystko jak na tacy. Na stronie, którą podałeś w pliku szukaj.php masz jakiś błąd składni. Wygląda na to, że nie znasz w ogóle podstaw php/SQL. Poczytaj jakieś kursy dostępne w necie - na pewno pomogą ;-)

A w punkcie trzecim podanym przez Hwao chodzi o przefiltrowanie danych wprowadzonych przez formularz przed ich wprowadzeniem do bazy danych. Więcej na temat działania funkcji znajdziesz w manualu.
=kokos=
Tu chyba Koledze chodziło o formularz z polami <option>. Czyli należałoby zrobić go tak:

  1. <form action="wynik.php" method="post">
  2. <select name="auto">
  3. <option>wybierz... </option>
  4. <option>Audi</option>
  5. <option>Fiat</option>
  6. .
  7. .
  8. .
  9. <select name="felgi">
  10. <option>wybierz...</option>
  11. .
  12. .
  13. .
  14. <select name="sruby">
  15. <option>wybierz...</option>
  16. <option>3x98</option>
  17. <option>3x112</option>
  18. .
  19. .
  20. .
  21. <input type="submit" name="Pokaz" value="Pokaz">
  22. </form>


sandei.. do tego co kolerzy napisali potrzebna Ci będzie baza danych. Czy wiesz jak ją utworzyć, jak z nią pracować i jak łączyć php z MySQL'em ? Nie pytam złośliwie tylko przydałoby się wiedzieć na jakim etapie jesteś, bo jeśli nie potrafisz tego co wymieniłem powyżej to nie ma sensu pisać kolejnych skryptów sad.gif
dawhol
=kokos= nie czepiaj sie zróbiłem mu ten formularz przykłądowo zeby widział jak to mniej wiecej wyglada, ale zgodze sie z toba ze jezeli nie zna sie chocby podstaw php i mysql to niema sie po co zza to zabierac bo wtedy to tylko strata czasu.

Nie lepiej zlecic ta strone jakiemus doswiadczonemu webmasterowi ? ;p
sandei
Oczywiście jakąś wiedze na ten temat mam, ale nie wystarczy ona do zrobienia czegoś wielkiego winksmiley.jpg. Dzięki =kokos=. Mam już coś więcej smile.gif. Teraz muszę jakoś zrobić z tą bazą. tongue.gif
=kokos=
dawhol ja się nie czepiam tylko wtrąciłem się do rozmowy tongue.gif :roll2: sprawdziłem jak wygląda wyszukiwarka na stronie, którą Sandei podał i stąd ten formularz, który napisałem smile.gif

Sandei odezwij się jak baza będzie gotowa winksmiley.jpg smile.gif
hwao
Jeżeli nie masz jeszcze tabeli w bazie danych to może ona wygladać tak:
  1. CREATE TABLE `auta` (
  2. `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `auto` varchar(255) NOT NULL,
  4. `felgi` smallint(2) NOT NULL,
  5. `sruby` varchar(255) NOT NULL,
  6. `temat` varchar(255) NOT NULL,
  7. `opis` text NOT NULL,
  8. PRIMARY KEY (`id`)
  9. )

Przykładowy rekord:
  1. INSERT INTO `auta` VALUES (1, 'Subaru', 21, '5x120', 'Subaru Impreza', 'Zestaw felg do tego modelu jest bardzo bogaty... ');
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.