请原谅我,因为这可能是一个101问题,但我没有运气缠绕它。
我正在使用mysqli-> prepare语句和
"Select * FROM someTable WHERE someTable.column = 1"
- 工作得很漂亮
我们可以通过使用a传递变量来使其动态化。和绑定参数。
"Select * FROM someTable WHERE someTable.column = ?"
- 工作得很漂亮
我的愿望是建立一个声明,让我动态地传递“someTable.column = 1”
"Select * FROM someTable WHERE ?"
我认为该方法是完全破产但是尝试通过传递变量“1 = 1”来测试它并且它有用吗?!
所以,如果我可以传递“1 = 1”,那么为什么我不能传递“someTable.column = 1”
我过去通过构建语句并一次插入所有内容来完成这项工作。我只是希望有另一种方式。
答案 0 :(得分:0)
原谅我,因为我的声誉不足以发表评论,但为什么不在你的情况下使用字符串concat?
例如$query="Select * FROM someTable WHERE 1=1 ";
然后
if($additionalInfo==true){ $query.= "AND someTable.column=1 "; }
如果我误解了您的问题,请通知我,我会删除这个可能误导性的帖子。