为什么要排拆IF呢?下面这样能达到你的要求么?$where_clause ="";
if(!empty($_POST['name'])) $where_clause .= " and name like '%".$_POST['name']."%'";
if(!empty($_POST['age'])) $where_clause .= " and name like '%".$_POST['age']."%'";
if(!empty($_POST['sex'])) $where_clause .= " and name like '%".$_POST['sex']."%'";
$sql = "select * from userwhere 1=1 ".$where_clause;以上语句是在记事本里写的,未做语法检查.另外你可以不用like,而用=