如何在PHP MYSQL中创建具有条件的过滤器

时间:2017-01-11 11:30:13

标签: php

如何在SELECT语句中添加条件,只要计数为1,将使用具有连接条件的条件。这是我的代码。

$done = "SELECT * FROM tbl_accepted WHERE status ='done'" ;
if(isset($_POST['search'])){
   $search_term = mysqli_real_escape_string($db, $_POST['searchbox']);
   $done .= "AND acceptCarOwner = '{$search_term}'" ;
   $done .= "AND renter = '{$search_term}'";
}
$donequery = mysqli_query($db, $done);

我想要发生的是,如果$search_term不在AND acceptCarOwner = '{$search_term}'条件下,用户在一个字段上搜索内容,则会转到AND renter = '{$search_term}'的下一个条件

2 个答案:

答案 0 :(得分:0)

您可以通过连接您的代码来过滤数据。试一试。

$where = " `status` = 'done' ";

if(isset($_POST['search'])){
   $search_term = mysqli_real_escape_string($db, $_POST['searchbox']);
   $where.= " AND `acceptCarOwner` = '{$search_term}'" ;
   $where.= " AND `renter` = '{$search_term}'";
}

$done = "SELECT * FROM tbl_accepted WHERE ". $where ;
$donequery = mysqli_query($db, $done);

答案 1 :(得分:0)

你使用$ _POST ['search'],然后在下一行使用$ _POST ['searchbox']

$done = "SELECT * FROM tbl_accepted WHERE status ='done'" ;
if(isset($_POST['search'])){
   $search_term = mysqli_real_escape_string($db, $_POST['search']);
   $done .= "AND acceptCarOwner = '$search_term'" ;
   $done .= "AND renter = '$search_term'";
}
$donequery = mysqli_query($db, $done);