Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Błąd wyszukiwarki.
Forum PHP.pl > Forum > Przedszkole
zolasty
Nie działa mi wyszukiwarka. Zapytanie musi się łączyć z tabelą zdjęcia i tabelą ogłoszenia. Zwracać wyniki w formacie miniaturka, nazwa, region itd. I tak zwraca jeżeli nie dam żadnych opcji wyszukiwania i po prostu kliknę wyszukaj. Można sprawdzić http://urokliwe.pl/index.php?mod=search

Natomiast nie potrafię tego obsłużyć jeżeli dam jakieś wytyczne wyszukiwania.
Czy region, czy kategorie, czy nazwa miasta.
To zawartość bazy danych ogłoszenia:



To miało działać tak, że jak w kategorii wybiorę woda, przeszuka wszystkie kolumny i jak trafi to wyrzuca jako wynik.

  1. require_once('config.php');
  2.  
  3.  
  4. $query = "SELECT o.*, z.idzdjecia FROM ogloszenia as o Inner Join zdjecia as z ON o.id = z.idogloszenia group by o.id";
  5.  
  6.  
  7.  
  8. if( !empty( $_POST['region'] ) ) $query .= "AND region='{$_POST['region']}' ";
  9. if( !empty( $_POST['kategoria'] ) ) $query .= " AND woda = '{$_POST['kategoria']}' OR las = '{$_POST['kategoria']}' OR zabytki = '{$_POST['kategoria']}' OR góry = '{$_POST['kategoria']}' OR restauracje = '{$_POST['kategoria']}'";
  10. if( !empty( $_POST['miasto'] ) ) $query .= " AND miasto='{$_POST['miasto']}' ";
  11. // die($query);
  12. $sql->query( $query );
  13. $kategoria = $_POST['kategoria'];
  14.  
  15. // $row = $sql->fetchRow() ;
  16. // print_r($row);
  17. // die();
  18. echo "<table cellpadding='2' class='tabelka2' lign='center' width='100%' border='1'>";
  19. echo "<tr>";
  20. echo "<td><b>Miniatura:</b></td>";
  21. echo "<td><b>Nazwa:</b></td>";
  22. echo "<td><b>Region:</b></td>";
  23. echo "<td><b>Miasto:</b></td>";
  24. echo "<td></td>";
  25. echo "</tr>";
  26. while($r = $sql->fetchAssoc() ) {
  27. echo "<tr>";
  28. echo "<td><img src=miniatury/".$r['idzdjecia'].".jpg></td>";
  29. echo "<td>".$r['nazwa']."</td>";
  30. echo "<td>".$r['region']."</td>";
  31. echo "<td>".$r['miasto']."</td>";
  32. echo "<td><a href='index.php?mod=view_advert&id={$r['id']}'>Pokaż<a></td>";
  33. echo "</tr>";
  34. }
  35. echo "</table>";


SQLClass z której też wyrzuca błędy jest klasą funkcji
  1. ////SQL
  2. class sql
  3. {
  4. private $connection;
  5. private $result;
  6. private $row;
  7. private $numRows;
  8. private $Queries = 0;
  9. //SINGLETON
  10. static protected $sqlObj;
  11. public static function getInstance()
  12. {
  13. if(self::$sqlObj==null) {
  14. self::$sqlObj = new self;
  15. }
  16. return self::$sqlObj;
  17. }
  18.  
  19. public function connect ( $host, $user, $pass, $db )
  20. {
  21. $this->connection = mysql_connect( $host, $user, $pass );
  22. $this->query( "SET NAMES 'utf8'" );
  23.  
  24. }
  25.  
  26. public function query( $query )
  27. {
  28.  
  29. $this->result = @mysql_query( $query );
  30. $this->Queries++;
  31.  
  32.  
  33. return 1;
  34. }
  35.  
  36. public function fetchArray()
  37. {
  38. $this->row = mysql_fetch_array( $this->result );
  39. return $this->row;
  40. }
  41.  
  42. public function fetchAssoc()
  43. {
  44. $this->row = mysql_fetch_assoc( $this->result );
  45. return $this->row;
  46. }
  47.  
  48. public function fetchRow()
  49. {
  50. $this->row = mysql_fetch_row( $this->result );
  51. return $this->row;
  52. }
  53.  
  54. public function numRows()
  55. {
  56. return $this->numRown = mysql_affected_rows( );
  57.  
  58. }
  59.  
  60. public function disconnect()
  61. {
  62. mysql_close( $this->connection );
  63.  
  64. }
  65. public function lastID()
  66. {
  67. return mysql_insert_id();
  68.  
  69. }
  70.  
  71. public function numQueries()
  72. {
  73. return $this->Queries;
  74. }
  75. }

JaRoPHP
Napisz, jak wygląda $query, przed wykonaniem samego zapytania.
zolasty
To zwraca zapytanie $query:


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.