如何取消设置查询变量

时间:2015-08-05 10:40:55

标签: php mysql

为了从数据库(mySql)中获取数据,我根据用户的要求附加我的查询,这是他从我给他的过滤器中选择的。但是在特定点,如果满足某些条件,所以我想取消设置之前设置为某个变量的字段(submissionDate)并为该变量设置一些新字段。例如,我的查询是:

$query = "SELECT * FROM table2 WHERE DATE(submissionDate) between '$variablename3' and  '$variablename4'"

但如果以下条件成立:

if($variablename8=="Approved")

所以我必须追加以前的查询并添加到它

$query = "$query and DATE(newDate) between '$variablename3' and  '$variablename4'"

请注意,我会根据遇到的条件附加它。所以无法再次写入所有查询。不同的字段将设置为不同的值,但只有满足此条件时,我必须取消设置submissionDate并设置newDate字段b / w var3和var4并取消设置前一部分:

DATE(submissionDate) between '$variablename3' and  '$variablename4'

所以基本上我必须忽略submissionDate效果,而它将保留在查询中。有没有办法解决这类问题?

1 个答案:

答案 0 :(得分:0)

请尝试使您的查询变量有条件。

$query = "SELECT * FROM table2 WHERE 1=1 AND ";

if($variablename8=="Approved")
$query .= "DATE(newDate) between '$variablename3' and  '$variablename4'";
else
$query .= "DATE(submissionDate) between '$variablename3' and  '$variablename4'";

或者您正在寻找别的东西吗?