Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Wyszukiwarka by nospor
Forum PHP.pl > Forum > Przedszkole
DREEMus
  1. <?php
  2. $wh = array(); //inicjalizujemy tablicę z warunkami
  3. if (!empty($_POST['miasto'])) //jeśli podano miasto
  4.    $wh[] = "miejscowosc = '$_POST[miasto]' ";
  5. if (!empty($_POST['dzielnica'])) //jeśli podano dzeilnice
  6.    $wh[] = "dzielnica = '$_POST[dzielnica]' ";
  7. if (!empty($_POST['ulica'])) //jeśli podano ulice
  8.    $wh[] = "ulica = '$_POST[ulica]' ";
  9. if (!empty($_POST['cenaOd'])) //jeśli podano cene od
  10.    $wh[] = "cena >= '$_POST[cenaOd]' ";
  11. if (!empty($_POST['cenaDo'])) //jeśli podano cene do
  12.    $wh[] = "cena <= '$_POST[cenaDo]' ";
  13. if (!empty($wh))
  14.    $where = 'WHERE '.implode(' and ', $wh);
  15. else
  16.    $where = '';
  17. echo '<hr><p>Wyniki wyszukiwania:</p>';
  18. //a teraz tworzymy nasze glowne zapytanie i łączymy je z naszymi warunkami
  19. $sql = 'SELECT * FROM nieruchomosci ' . $where . ' AND stat = 0 ORDER BY createDate DESC';
  20. ?>


Taki oto mam kod wyszukiwania... Problem w tym, że gdy podam ulice np. Aleja (w bazie Aleja Pracy) to nie pokaże nic,
próbowałem wstawić tam 'ulica LIKE "%' . $_POST[ulica] . '%" ' zamiast "ulica = '$_POST[ulica]' ",
ale coś nie chce tego przerobić za zapytanie ...
Ktoś może pomóc questionmark.gif ;>
blooregard
FULLTEXT search
nospor
nie: 'LIKE "%' . $_POST[ulica] . '%" '
a: 'ulica LIKE \'%' . $_POST[ulica] . '%\' '

przeciez dla like trzeba podac jakiego pola ma dotyczyc winksmiley.jpg
DREEMus
poprawiłem, przy pisaniu zapomniełem to dodać na forum smile.gif
ale tak też nie chce ruszyć ...

po Twoich poprawkach DZIAŁA, lecz dostaje taki błąd ...
Cytat
Notice: Use of undefined constant ulica - assumed 'ulica' in C:\Serwer\htdocs\szukajka.php on line 22
nospor
nie: $_POST[ulica]
a: $_POST['ulica']

$_POST[ulica] mozesz stosowac w tekscie, a nie poza nim
DREEMus
i wszystko stało się jasne biggrin.gif
dziękuje ślicznie za pomoc smile.gif

poprawny kod:
  1. <?php
  2. $wh = array(); //inicjalizujemy tablicę z warunkami
  3. if (!empty($_POST['miasto'])) //jeśli podano miasto
  4.    $wh[] = 'miejscowosc LIKE '%' . $_POST['miasto'] . '%' ';
  5.  
  6. if (!empty($_POST['dzielnica'])) //jeśli podano dzeilnice
  7.    $wh[] = 'dzielnica LIKE '%' . $_POST['dzielnica'] . '%' ';
  8.  
  9. if (!empty($_POST['ulica'])) //jeśli podano ulice
  10.    $wh[] = 'ulica LIKE '%' . $_POST['ulica'] . '%' ';
  11.  
  12. if (!empty($_POST['cenaOd'])) //jeśli podano cene od
  13.    $wh[] = "cena >= '$_POST[cenaOd]' ";
  14.  
  15. if (!empty($_POST['cenaDo'])) //jeśli podano cene do
  16.    $wh[] = "cena <= '$_POST[cenaDo]' ";
  17.  
  18. if (!empty($wh))
  19.    $where = 'WHERE '.implode(' and ', $wh);
  20.  
  21. else
  22.    $where = '';
  23.  
  24. echo '<hr><p>Wyniki wyszukiwania:</p>';
  25.  
  26. //a teraz tworzymy nasze glowne zapytanie i łączymy je z naszymi warunkami
  27. $sql = 'SELECT * FROM nieruchomosci ' . $where . ' AND stat = 0 ORDER BY createDate DESC';
  28. ?>
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.