我想使用PHP和mongodb使用表单输入执行查询。使用表单数据作为输入的条件查询
<form method="post" action="search.php">
<tr><td>Firm</td><td><input type="text" name="firm" /></td></tr>
<tr><td>City</td><td><input type="text" name="city" /></td></tr>
<tr><td>State</td><td><input type="text" name="state" /></td></tr>
<tr><td colspan="2" align="center"><input type="submit" value="Search" /></td></tr>
</form>
如果所有的表单字段都被填充了,我可以很容易地做到这一点
extract($_POST);
$query = array("firm" => $firm, "city" => $city, "state" => $state);
$fields = array("firm");
$cur = $collection->find($query,$fields);
(中的search.php页)但是,如果一个或多个字段为空什么?有没有简单的方法来构建查询,只包含非空字段?
感谢,
麦克德莫特
关于如何做到这一点,你有什么想法?你到目前为止尝试了什么? – markus 2011-03-25 18:35:09
对不起,我尝试使用if语句和array_push来追加查询字符串,但似乎没有工作。像这样,if(empty($ firm))$ query = array_push($ query,“firm”=> $ firm)。我的报价可能会搞砸了。 – mcdermott 2011-03-25 18:38:31
为什么PHP开发人员如此粗暴? – Will 2011-03-25 19:01:06