Можно ли сделать подстановку строк более професеональнее?

Pavel6

Новичок
Можно ли сделать подстановку строк более професеональнее?

Подскажите можно ли сделать подстановку строк более професеональнее?

Я проверяю на наличие переменной, если переменноя та или другая существует, тогда в sql-запрос добавляется поля для поиска с их значениями, если есть обе переменные тогда поиск идет по двум полям, если нет переменных, тогда выводится все полностью.

PHP:
$_sql = "SELECT  * FROM piople";
   if(isset($p_city) || isset($p_rub)){
   $_sql.=" WHERE";
   if(isset($p_city))$_sql.=" city='$p_city'";
   if(isset($p_city) && isset($p_rub))$_sql.=" AND";
   if(isset($p_rub))$_sql.=" Rubrika='$p_rub'";
   }

mysql_query($_sql);
 

Фанат

oncle terrible
Команда форума
профессиональнее - можно.
PHP:
$w=array();
if (!empty($_GET['rooms'])) $w[]="rooms='".mysql_real_escape_string($_GET['rooms'])."'";
if (!empty($_GET['space'])) $w[]="space='".mysql_real_escape_string($_GET['space'])."'";
if (!empty($_GET['max_price'])) $w[]="price < '".mysql_real_escape_string($_GET['max_price'])."'";

if (count($w)) $where="WHERE ".implode(' AND ',$w); else $where='';
$query="select * from table $where";
 
Сверху