Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Условная выборка из базы данных

Сообщения:  [1-6] 

 
 автор: Faraon   (20.01.2008 в 17:38)   письмо автору
 
   для: Neolink   (20.01.2008 в 13:38)
 

Можно использовать LIKE

$query = "SELECT telefon, kontakt, email,
kolkom, cena, ulica, etaj, etajnost,
nal_telefona, obschayapl, plkomnat,
sostoyanie, primechanie, begin, end
FROM prodat
WHERE kolkom LIKE '%$kolkom%' AND
cena LIKE '%$cena%' AND
ulica LIKE '%$ulica%' AND
etaj LIKE '%$etaj%' AND
etajnost LIKE '%$etajnost%' AND
nal_telefona LIKE '%$nal_telefona%' AND
sostoyanie LIKE '%$sostoyanie%'";

   
 
 автор: nazgarth   (20.01.2008 в 17:29)   письмо автору
 
   для: Neolink   (20.01.2008 в 16:41)
 

Эм..

<select name="etaj">
<option value="%" selected="selected">(не важно)/(не выбрано)/(оставить пустым)
<option value="1">1 этаж
<option value="2">2 этаж
...
</select>

$query = "SELECT telefon, kontakt, email,
kolkom, cena, ulica, etaj, etajnost,
nal_telefona, obschayapl, plkomnat,
sostoyanie, primechanie, begin, end
FROM prodat
WHERE kolkom LIKE '$kolkom' AND
cena LIKE '$cena' AND
ulica LIKE '$ulica' AND
etaj LIKE '$etaj' AND
etajnost LIKE '$etajnost' AND
nal_telefona LIKE '$nal_telefona' AND
sostoyanie LIKE '$sostoyanie'";

   
 
 автор: Neolink   (20.01.2008 в 16:41)   письмо автору
 
   для: Neolink   (18.01.2008 в 15:59)
 

Решение уже конечно придумал сам... однако если для кого еще это актуально то пожалуйста кусок кода который думаю наведет вас нс мысль.

//The Cheking entered information 

if($cena==0):
$x_cena="";
else:
$x_cena="AND cena = $cena";
endif;

if($ulica==0):
$x_ulica="";
else:
$x_ulica="AND ulica = $ulica";
endif;

if($etaj==0):
$x_etaj="";
else:
$x_etaj="AND etaj = $etaj";
endif;

if($etajnost==0):
$x_etajnost="";
else:
$x_etajnost="AND etajnost = $etajnost";
endif;

if($nal_telefona==0):
$x_nal_telefona="";
else:
$x_nal_telefona="AND nal_telefona = $nal_telefona";
endif;

if($sostoyanie==0):
$x_sostoyanie="";
else:
$x_sostoyanie="AND sostoyanie = $sostoyanie";
endif;

$query = "SELECT telefon, kontakt, email, kolkom, cena, ulica, etaj, etajnost, nal_telefona, obschayapl, plkomnat, sostoyanie, primechanie, begin, end FROM prodat WHERE kolkom='$kolkom' $x_cena $x_ulica $x_etaj $x_etajnost $x_nal_telefona $x_sostoyanie";

   
 
 автор: Neolink   (20.01.2008 в 13:38)   письмо автору
 
   для: Neolink   (18.01.2008 в 15:59)
 

Видимо я не совсем понятно задал вопрос.
Вот код запроса для выбора данных из БД:

$query = "SELECT telefon, kontakt, email, 
kolkom, cena, ulica, etaj, etajnost, 
nal_telefona, obschayapl, plkomnat, 
sostoyanie, primechanie, begin, end 
FROM prodat 
WHERE kolkom = '$kolkom' AND 
cena='$cena' AND 
ulica='$ulica' AND 
etaj='$etaj' AND 
etajnost='$etajnost' AND 
nal_telefona='$nal_telefona' AND 
sostoyanie='$sostoyanie'";

Так вот смотрите, скажем пользователя не интересует этаж и слдеовательно при поиске он не заполнял эту форму а оставил её как есть:
<select name=\"etaj\">
<option value=\"1\">1 этаж
<option value=\"2\">2 этаж
<option value=\"3\">3 этаж
<option value=\"4\">4 этаж
<option value=\"5\">5 этаж
<option value=\"6\">6 этаж
<option value=\"7\">7 этаж
<option value=\"8\">8 этаж
<option value=\"9\">9 этаж
<option value=\"10\">10 этаж
<option value=\"11\">11 этаж
<option value=\"12\">12 этаж
<option value=\"13\">13 этаж
<option value=\"14\">14 этаж
<option value=\"15\">15 этаж
</select>

Так как сделать так что раз он её не заполнял, запросу $query по etaj удовлетворяли все ячейки.

   
 
 автор: Loki   (18.01.2008 в 17:54)   письмо автору
 
   для: Neolink   (18.01.2008 в 15:59)
 

есле нечего нивыбрано то ищем па фсем группам иначи добавляим AND group_id=$var где $var эта выбраннная група вот.

   
 
 автор: Neolink   (18.01.2008 в 15:59)   письмо автору
 
 

Доброго времени,
вопрос достаточно интересный не знал даже к какому разделу он больше относиться.
Есть скрипт который должен делать выборку из БД по нескольким параметрам. Как это сделать при условии что если скажим пользователь когда заходит на страницу поиска не трогает одну из форм и она остаеться по умолчания и следовательно надо что бы по этому полю соответствующему этой переменной поиск не производился (что бы к запросу SELECT подходили все ячейки данной переменной из формы).
Подскажите хотя бы алгоритм. Спсибо.

   

Сообщения:  [1-6] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования