Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z SELECT
Forum PHP.pl > Forum > Przedszkole
Gość_Adam
Witam, pisze skrypt ktory wyszukuje ofert turystyczne, napotkalem jeden problem a mianowicie w formularzu procz ceny mozna okreslij miejsce pobytu - wiem jak przeszukac baze pod wzgledem miejsca pobytu jednak problem pojawia sie kiedy uzytkownik wybierze dowolne miejsce pobytu i co wtedy zrobic zeby po prostu jeden warunek znikl z polecenia wysylanego do mySQL?
ktore wyglada wyglada tak:

...
  1. <?php
  2.  
  3. $sql = &#092;"SELECT * FROM prima WHERE b_cena > '$min' AND b_cena < '$max' AND b_pobyt = '$f_pobyt' ORDER BY b_id DESC\";
  4.  
  5. ?>


wpadlem na pomysl zeby wepchnac jakos do srodka intrukcje IF, ale jak to nie mam pojecia, mialoby to wygladac mniej wiecej tak:

  1. <?php
  2.  
  3. $sql = &#092;"SELECT * FROM prima WHERE b_cena > '$min' AND b_cena < '$max' AND if($f_pobyt!=\"dowolne\")
  4. { 
  5.  b_pobyt = '$f_pobyt'
  6. } 
  7. ORDER BY b_id DESC&#092;";
  8.  
  9. ?>




Prosze o pomoc
j00seph
Więc tak :
W sql znak % oznacza to dowolna kombinace ( * w dosie,linuxie)
Myśle ze miałoby to wyglądać mniejwięcej tak
  1. <?php
  2.  
  3. if($f_pobyt==null){
  4. $f_pobyt=&#092;"%%\";
  5. }
  6. $sql = &#092;"SELECT * FROM prima WHERE b_cena > '$min' AND b_cena < '$max' AND b_pobyt = '$f_pobyt' ORDER BY b_id DESC\";
  7. ?>


PS. ja sie nie znam - niech sie ktos wypowie - czy zamiast %% mogloby byc ANY ?

PS2.[REKLAMA] Prosze o klika smile.gif http://my.opera.com/J00nash/affiliate/

pozdrw.
Kuziu
Zawsze możesz posklejać zapytanie:
  1. <?php
  2.  
  3. $sql = &#092;"SELECT * FROM prima WHERE b_cena > '$min' AND b_cena < '$max'\";
  4. if($f_pobyt != 'dowolne'){
  5.  $sql .= &#092;" AND b_pobyt = '$f_pobyt'\";
  6. }
  7. $sql .= &#092;" ORDER BY b_id DESC\";
  8.  
  9. ?>
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.