Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 3.508 pregleda

Najnovija ↓

Pretraga baze... hitnoo!!! 13.07.2005. u 10:48 · pre 259 meseci #1
Imam dosta nekih podataka u bazi.
Hocu da vrsim pretragu po kategorijama, znaci na strani za pretragu se nalaze <select> tagovi i kada izaberem neku opciju ono uporedjuje sa bazom i nalazi podatak koji je potreban.

Problem je u tome sto ne znam kako da uradim da kada izabere iz liste prvu opciju "nije bitno" da ispise sve rezultate.
znaci $zahtev uzima neku vrednost iz "select" i uporedjuje u bazi sa uslovom.

select * from tabela where uslov='$zahtev';

napominjem da ima dosta uslova pa mi ne odgovara da radim nekoliko razlicitih $query-ja, ili je to jedini nacin?
Potpis
www.autopijac.com
www.linkovi.info
www.privrednivodic.com
www.tuhaj.com
Re: Pretraga baze... hitnoo!!! 13.07.2005. u 11:00 · pre 259 meseci #2
@define: Pa, kada ne zelis da ogranicis upit, onda izostavis WHERE opciju, a kada zelis da ogranicis upit ili da dodas neku ogranicavajucu vrijednost, onda koristis WHERE opciju sa AND ili OR.
Mozda ce ti biti jos zanimljiva opcija LIKE, pogotovo ako zelis da koristis wildcards...
Potpis
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
Re: Pretraga baze... hitnoo!!! 13.07.2005. u 11:16 · pre 259 meseci #3
Izgleda da me niste bas razumeli, sada cemo ovako...

Sajt se odnosi na auto oglase. Na stranici za pretragu imam nekoliko <select tagova>, znaci jedan za proizvodjaca, drugi za tip itd....
Sve to funkcionise dobro kada izabiram neke odredjene uslove, znaci izaberem mercedes i $proizvodjac uzima vrednost mercedesa i salje je u stranicu za upit.
u stranici za upit pise
$query="select * from auto where proizvodjac='$proizvodjac' and tip='$tip' and ... and .. and..."

stvar je u tome sto ne znam kako da odradim sledece:
ako covek koji vrsi pretragu kaze ne interesuje me proizvodjac ili ne interesuje me tip ili bilo sta, onda upit treba da izvrsi selekciju svih automobila koji zadovoljavaju upit.

Konkretno ako kaze ne interesuje me proizvodjac

<option selected value="-2">nije vazno

tada $proizvodjac treba da uzme neku vrednot za tu opciju "nije vazno" u ovom slucaju -2
$query="select * from auto where proizvodjac='-2' and tip='$tip' and ... and .. and..."

znaci meni treba nacin da se ovo proizvodjac='-2' interpretira kao SVI PROIZVODJACI
Potpis
www.autopijac.com
www.linkovi.info
www.privrednivodic.com
www.tuhaj.com
Re: Pretraga baze... hitnoo!!! 13.07.2005. u 11:48 · pre 259 meseci #4
Mozes da u zavisnosti od toga sta je izabrano napravis query. Npr, napravis ovakvu funkciju:

Code:

function SelectAuto($proizvodjac, $tip, $boja) {
    $query = "SELECT * FROM auto";

    if ($proizvodjac)
        $where[] = "proizvodjac='$proizvodjac'";
    if ($tip)
        $where[] = "tip='$tip'";
    if ($boja)
        $where[] = "boja='$boja'";

    if ($where) {
        $query .= ' WHERE ' . join(' AND ', $where);
    }

    print $query;
}


pa onda mozes da je koristis:

SelectAuto('BMW', '316', '');
SelectAuto('', '', 'zeleni');
itd...
Potpis
Never trust an operating system you don't have sources for.
Re: Pretraga baze... hitnoo!!! 14.07.2005. u 00:48 · pre 259 meseci #6
Ako te kriterijum $proizvodjac ne interesuje, onda uopste nemoj da ga stavljash u WHERE izraz.

Dakle, query bi izledao ovako nekako:
$query="select * from auto where tip='$tip' and ... and .. and..."

Znaci, bez $proizvodjac varijable ...
Potpis
Programeri su odgovorili na Hamletovo pitanje "Biti il ne biti?" :
0x2B | ~0x2B = 0xFF
(kao ono - ff - teško pitanje!)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme