Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать запрос в базу данных....+++

☀︎Питруха☀︎ Мастер (1806), на голосовании 3 месяца назад
чтобы по условию WHERE по значению переменной выводились все данные а не только те которые равны значению переменной
сейчас у меня вот такой код
  $dta = "SELECT * FROM shiny_name  WHERE Ширина = '".$data['Ширина']."' AND Профиль = '".$data['Профиль']."' AND Диаметр = '".$data['Диаметр']."'  AND Бренд = '".$data['Бренд']."'  AND Авто = '".$data['Авто']."' " ; 
т. е. сейчас у меня делается запрос по конкретному значению переменной а мне надо чтобы некоторые переменные задавали условия поиска "всех" значений. как так сделать?
Дополнен 4 месяца назад
как указать WHERE поле = любое значение
Дополнен 4 месяца назад
при определенном условии исключить ширину из поиска например
Голосование за лучший ответ
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (263680) 4 месяца назад
Добавь в запрос только те поля, которые имеют значение.
 if (!empty($data['Ширина'])) { 
$conditions[] = "Ширина = '".$data['Ширина']."'";
}
if (!empty($data['Профиль'])) {
$conditions[] = "Профиль = '".$data['Профиль']."'";
}
if (!empty($data['Диаметр'])) {
$conditions[] = "Диаметр = '".$data['Диаметр']."'";
}
if (!empty($data['Бренд'])) {
$conditions[] = "Бренд = '".$data['Бренд']."'";
}
if (!empty($data['Авто'])) {
$conditions[] = "Авто = '".$data['Авто']."'";
}

$query = "SELECT * FROM shiny_name";
if (!empty($conditions)) {
$query .= " WHERE " . implode(" AND ", $conditions);
}
☀︎Питруха☀︎Мастер (1806) 4 месяца назад
при разных условиях они могут быть а могут не быть. т.е. когда ширина равна 100 это одно а когда она равна ЛЮБАЯ это другое
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (263680) ☀︎Питруха☀︎, когда ширина любая, то это поле является незначащим и исключается из запроса
LV Мудрец (17199) 4 месяца назад
where (ширина=х or x=-1) and ...
Похожие вопросы