|
|
|
| Здравствуйте.Я любитель и у меня задача которую немогу решить.
Из формы даем переменные для поиска из базы.
$product = $_POST['product'];
$store = $_POST['store'];
$brand= $_POST['brand'];
$query = " SELECT * FROM dat WHERE product='$product' and store='$store' and brand='$brand'";
|
Но в запросе надо использовать только те переменные, которые у нас вставлены.Или если скажем не вставлена переменная $store то чтобы при таком же $query игнорировал совпадение с store.
Помогите пожалуйста решить проблему. | |
|
|
|
|
|
|
|
для: makigo
(21.08.2011 в 13:28)
| | В этом случае обычно формируют массив с условиями
<?php
$sql = array();
if(!empty($product)) $sql[] = "product='$product'";
if(!empty($store)) $sql[] = "store='$store'";
if(!empty($brand)) $sql[] = "brand='$brand'";
?>
| а потом его преобразуют в строку при помощи implode()
<?php
if(!empty($sql)) $query = "SELECT * FROM dat WHERE ".implode(" AND ", $sql);
else $query = "SELECT * FROM dat";
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(21.08.2011 в 13:37)
| | Большое спасибо! | |
|
|
|