【发布时间】:2011-08-03 02:39:47
【问题描述】:
假设我的网址是http://something.com/products.php?brand=samsung&condition=new
对于上述查询,我使用isset() 和$_GET[]) 函数以及PHP 中的大量if-else 语句来生成用于显示满足搜索条件的产品的sql 查询。
例如:如果我只处理 brand 和 condition 参数,那么这就是我生成查询的方式:
$sql = "select * from products where 1=1 ";
if(isset($_GET['brand']))
{
if(isset($_GET['condition']))
{
$sql = $sql + "and brand=".$_GET['brand']." and condition=".$_GET['condition'];
}
}
else
{
if(isset($_GET['condition']))
{
$sql = $sql + "and condition=".$_GET['condition'];
}
else
{
$sql = $sql + ";";
}
}
现在假设我的网址有 10 个(或更多)参数。在这种情况下,使用if-else 一点都不好。如何在不使用这么多 if-else 语句的情况下生成查询?有没有更好的方法/脚本/库来做这件事?
【问题讨论】:
标签: php javascript mysql web-services