我有3个搜索框,用户可以在任何3个或全部3个搜索框中输入信息。
$user = $_POST['user'];
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$query = "SELECT user.user, user.firstname, user.lastname
FROM user WHERE type = 'Owner' AND user LIKE '%$user%'";
如果这个人全部搜索3,我怎么把它们放进去?
$query = "SELECT user.user, user.firstname, user.lastname
FROM user WHERE type = 'Owner' AND user LIKE '%$user%'
OR/AND type = 'Owner' AND fname LIKE '%$firstname%'
OR/AND type = 'Owner' AND lname LIKE '%$lastname%'";
这就是我所拥有的但是不能正常工作但是我需要像OR / AND等一样的东西......有人可以告诉我该怎么做吗?感谢
答案 0 :(得分:1)
如果给出了值
,这将合并WHERE语句$user = mysql_real_escape_string($_POST['user']);
$firstname = mysql_real_escape_string($_POST['firstname']);
$lastname = mysql_real_escape_string($_POST['lastname']);
$where[] = "type='Owner'";
if(strlen($user) > 0){
$where[] = "user LIKE '%$user%'";
}
if(strlen($firstname) > 0){
$where[] = "firstname LIKE '%$firstname%'";
}
if(strlen($lastname) > 0){
$where[] = "lastname LIKE '%$lastname%'";
}
$query = "SELECT user.user, user.firstname, user.lastname
FROM user WHERE ". implode(' AND ', $where);