Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Wyszukiwarka i wyświetlenie wyników
aquarius1978
post
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 31.03.2012

Ostrzeżenie: (0%)
-----


Witam,

Mam stworzoną wyszukiwarkę, która działa poprawnie. Stworzone są w niej 3 filtry na podstawie, których wybiera się dane, jakie mają zostać wyświetlone.
Wyniki otrzymuję prawidłowo.
Chciałbym jednak by na stronie z wynikami, była również informacja jakie filtry zostały zastosowane.

Przykład:
W wyszukiwarce wybieram sobie: miasto, miesiąc, rok. Otrzymuję np. 20 wyników

Jak zrobić, by przed wyświetleniem wyników były podane te filtry, czyli np: Warszawa, Maj, 2012

Poniżej kod:
  1. <table width="100%" border="1">
  2.  
  3. <tr><td width="10%">#</td><td width="20%">Masa</td><td width="20%">Objętość</td><td width="20%">Wynik Końcowy</td><td width="20%">Miasto</td><td width="10%">Miesiąc</td><td width="10%">Rok</td></tr>
  4. <?php
  5.  
  6. require_once('class/class.SQL.php');
  7.  
  8.  
  9. $sql = new SQL;
  10.  
  11. $sql->connection();
  12.  
  13. $title = 'Wyniki KPK';
  14.  
  15.  
  16.  
  17. //start szukania
  18.  
  19. echo'<h2>Wyniki wyszukiwania</h2>';
  20.  
  21. $_POST['city']=trim($_POST['city']);
  22.  
  23. $_POST['month']=trim($_POST['month']);
  24.  
  25. $_POST['rok']=trim($_POST['rok']);
  26.  
  27.  
  28. if(empty($_POST['city']) && empty($_POST['month']) && empty($_POST['rok']))
  29.  
  30. die('Formularz wypełniony niepoprawnie! Nie można wyświetlić wyników wyszukiwania!');
  31.  
  32. else
  33. {
  34.  
  35. $query="Select * From kj_2 Where city Like '%{$_POST['city']}%' AND month Like '%{$_POST['month']}%'AND rok Like '%{$_POST['rok']}%'";
  36.  
  37. $result=mysql_query($query);
  38.  
  39. $obAmount=mysql_num_rows($result);
  40.  
  41. echo'Znaleziono: '.$obAmount.'<br /><br />';
  42.  
  43. for($x=0;$x<$obAmount;$x++)
  44. {
  45.  
  46. $row=mysql_fetch_assoc($result);
  47.  
  48.  
  49.  
  50. if( $row['wynik_end'] < 45){
  51.  
  52. $color = 'red';
  53.  
  54. }
  55. else{
  56.  
  57. $color = 'black';
  58.  
  59. }
  60.  
  61.  
  62.  
  63. echo ($row['city']); //- Tutaj nie wiem jak zrobić, wyświetla mi miasto tyle razy ile było wyników, a chcę
  64. // by było raz tylko wyświetlone
  65.  
  66.  
  67. echo '<tr><td>'.($x+1).'</td><td>'.$row['masa'].'</td><td>'.$row['objetosc'].'</td><td><font color="'.$color.'">'.$row['wynik_end'].'</font></td><td>'.$row['city'].'</td><td>'.$row['month'].'</td><td>'.$row['rok'].'</td></tr>';
  68.  
  69.  
  70.  
  71. }
  72. }
  73.  
  74. // Controler
  75.  
  76.  
  77. //require_once('themes/dzj_badanie_kpk_wyniki.php');
  78. # require_once('themes/classic/footer.php');
  79.  
  80. ?>
  81. </table>
Go to the top of the page
+Quote Post
usb2.0
post
Post #2





Grupa: Zarejestrowani
Postów: 341
Pomógł: 25
Dołączył: 28.09.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


zacznij od rezygnacji zapytania z like, albo wpisz sobie % i zobacz wyniki:P
Go to the top of the page
+Quote Post
aquarius1978
post
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 31.03.2012

Ostrzeżenie: (0%)
-----


O widzę krajan pisze smile.gif

A jak byś to zrobił? Prosiłbym o jakiś przykład jak to zrobić.

Ale bardziej mi chodzi o wyświetlenie danych z filtra.

Ten post edytował aquarius1978 25.05.2012, 08:30:13
Go to the top of the page
+Quote Post
usb2.0
post
Post #4





Grupa: Zarejestrowani
Postów: 341
Pomógł: 25
Dołączył: 28.09.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Szczerze to nie bardzo rozumiem tego problemu z filtrami, ale wracając do samego wyszukiwania to jeśli masz tabele na "silniku" MyISAM, to można uzyć np. Full Text Search które jest proste i działa napewno lepiej niż like, albo jeśli chcesz się nauczyć czegoś nowego i mieć pro użyj http://sphinxsearch.com/
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 08:20