[sql:1:bc2ab6d6b0]CREATE TABLE `i_oferty` (
`ID` int(10) unsigned NOT NULL auto_increment,
`ID_oferty` varchar(32) NOT NULL default '',
`kontakt_imie` varchar(255) NOT NULL default '',
`kontakt_tel` varchar(255) NOT NULL default '',
`kontakt_email` varchar(255) NOT NULL default '',
`lok_ulica` int(10) unsigned NOT NULL default '0',
`lok_nr_bud` int(11) NOT NULL default '0',
`lok_nr_miesz` int(11) NOT NULL default '0',
`lok_kod` varchar(255) NOT NULL default '',
`lok_miasto` varchar(255) NOT NULL default '',
`lok_dziel` int(11) NOT NULL default '0',
`lok_rodz` int(1) NOT NULL default '0',
`lok_rodz_lok` int(1) NOT NULL default '0',
`lok_metraz` int(10) unsigned NOT NULL default '0',
`lok_pok` int(11) NOT NULL default '0',
`lok_cena` float NOT NULL default '0',
`opl_prad` int(1) unsigned NOT NULL default '0',
`opl_gaz` int(1) unsigned NOT NULL default '0',
`opl_czynsz` int(1) unsigned NOT NULL default '0',
`opl_woda` int(1) unsigned NOT NULL default '0',
`opl_telefon` int(1) unsigned NOT NULL default '0',
`opl_internet` int(1) unsigned NOT NULL default '0',
`opl_inne` text NOT NULL,
`pok_lozka` int(1) unsigned NOT NULL default '0',
`pok_szafki` int(1) unsigned NOT NULL default '0',
`pok_tv` int(1) unsigned NOT NULL default '0',
`pok_pulki` int(1) unsigned NOT NULL default '0',
`pok_inne` text NOT NULL,
`kuch_lodowka` int(1) unsigned NOT NULL default '0',
`kuch_kuchenka` int(1) unsigned NOT NULL default '0',
`kuch_meble` int(1) unsigned NOT NULL default '0',
`kuch_inne` text NOT NULL,
`stan` int(1) unsigned NOT NULL default '0',
`u_ID` int(11) NOT NULL default '0',
`data` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`ID`)
)[/sql:1:bc2ab6d6b0]
jest prosty formulaz z kilkoma polami wybory przenosi dalej info za pomoca method="GET"
i tworzy linka w postaci :
Kod
http://imobilare/index.php?d=3&typ=1&pokoje=2&dzielnica=2&ulica=1&cena=2&wys=10&szukaj=Szukaj
no i teraz php generujace zapytanie do bazy...:
[php:1:bc2ab6d6b0]<?php
if(!empty($_GET[typ]))
{
$zap[lok_rodz] = "lok_rodz = '".$_GET[typ]."'";
}
if(!empty($_GET[cena]))
{
if($_GET[cena] == 1)
$zap[lok_cena] = "lok_cena <= '300'";
if($_GET[cena] == 2)
$zap[lok_cena] = "(lok_cena >= '300' AND lok_cena <=500)";
if($_GET[cena] == 3)
$zap[lok_cena] = "(lok_cena >= '500' AND lok_cena <=700)";
if($_GET[cena] == 4)
$zap[lok_cena] = "(lok_cena >= '700' AND lok_cena <=1000)";
if($_GET[cena] == 5)
$zap[lok_cena] = "lok_cena > 1000";
}
if(!empty($_GET[lokal]))
{
$zap[lok_rodz_lok] = "lok_rodz_lok = '".$_GET[lokal]."'";
}
if(!empty($_GET[pok]))
{
$zap[lok_pok] = "lok_pok = '".$_GET[pok]."'";
}
if(!empty($_GET[dzielnica]))
{
$zap[lok_dziel] = "lok_dziel = '".$_GET[dzielnica]."'";
}
if(!empty($_GET[pokoje]))
{
$zap[lok_pok] = "lok_pok = '".$_GET[pokoje]."'";
}
if(strlen($_GET[ulica]) > 0)
{
$zap[lok_ulica] = "lok_ulica = '".$_GET[ulica]."'";
}
if (!empty($_GET[wys]) AND $_GET[wys] != 'on')
{
$lim = ' LIMIT '.$_GET[wys].'';
}
$ile = count($zap);
$i = '1';
if ($ile > '0')
{
foreach($zap as $id => $wa)
{
$war .= " $wa";
if($i < $ile)
{
$war.= ' AND ';
}
$i++;
}
}
$sql1 = "SELECT * FROM i_oferty WHERE $war$lim";?>[/php:1:bc2ab6d6b0]
ma moze ktos jakis lepszy pomysl na realizacje tego zapytania??
moze jakas doskonalsza baza luyb cokolwiek?

dodam ze jest to strona dosc priorytetowa i musi chulac dosc szybko i sprawnie....
pozdro z gory dzieki za pomoc!!