number
Возник вопрос, уточняю я совсем еще в пыхе сырой.
Есть у меня таблица:
id | name | number | logo |
есть форма поиска
Номер ID:
Имя:
номер:
ну и собсно "Поиск"
подскажите знатоки, как мне сформировать код, чтобы при вводе не всех полей осуществлялся поиск, а невведенное поле просто игнорировалось и не выдавало ошибку?
чтото никак не могу сообразить (поскольку недавно только начал програмировать)
желательно по существу постить, с примерами. Буду примного благодарен за помощь.
Спустя 1 минута, 53 секунды (25.05.2011 - 20:19) T1grOK написал(а):
Смотри http://phpforum.ru/index.php?showtopic=45570&hl= я там писал универсальный код.
Спустя 12 часов, 56 минут, 32 секунды (26.05.2011 - 09:16) Oliver Varnce написал(а):
Все это хорошо. Но чтото не срабатывает код, выдает пустоту. Как сформировать с этого кода именно запрос к базе?
Спустя 13 минут, 44 секунды (26.05.2011 - 09:30) Michael написал(а):
Oliver Varnce, показывай как переделал под себя код от T1grOK.
Спустя 18 минут, 41 секунда (26.05.2011 - 09:48) Oliver Varnce написал(а):
<?
//@ $db = mysql_connect("localhost",'root','');
@ $db = mysql_connect("localhost",'root','');
if (!$db) {echo "ERROR: Failed to connect database"; exit;}
mysql_select_db('vip_'.$LANG);
mysql_query('SET NAMES cp1251');
//создаем массив полей, которые могут использоваться в запросе, собственно это и есть основной элемент универсальности
$_columns = array('id'=>'all',
'street'=>NULL,
'price1'=>NULL,
'price2'=>NULL,
'rooms1'=>NULL,
'rooms2'=>NULL,
'floor1'=>NULL,
'floor2'=>NULL,
'date1'=>NULL,
'date2'=>NULL);
$query_filter = '';//кусок запроса с условиями
$query_filter_array = array();
//собственно проверяем отправили ли форму
if ($_POST['submit']){
//смотрим что у нас пришло с поста
foreach($_columns as $key=>$value){
if(isset($_POST[$key])){
$query_filter_array[] = '`'.$_POST[$key]. '` LIKE \''.$_POST[$key].'\'';
}
}
}
//проверяем было ли что-то заполнено
//если да то разбираем массив
if(!empty($query_filter_array)){
$query_filter = " WHERE ".implode(' AND ', $query_filter_array);
}
//дальше собираем весь запрос и выполняем
$Query = mysql_query($tQuery.$query_filter);
if (!$db) {
echo "Error: couldnt connect";
exit;
}
echo "найдено: $Query";
?>
Спустя 42 секунды (26.05.2011 - 09:49) Oliver Varnce написал(а):
пытаюсь запустить листинг только по одному запросу id
Спустя 44 секунды (26.05.2011 - 09:50) linker написал(а):
Дубль темы http://phpforum.ru/index.php?showtopic=456...=0#entry1160623 закрыто.
_____________
мой хостинг - GlobalNET.com.ua