如何从数据库中为php中输入的特定字段选择条目

时间:2013-03-09 16:11:50

标签: php oracle10g oracle11g

我有php页面,它从用户那里获取startdate,enddate,hotelname,city,price和type的值。 现在我需要检查我的数据库中仅查看用户输入的值。那可能吗?对于任何留空的条目,不应用相应的条件(例如,如果城市留空,则考虑所有城市)。 就像用户只输入酒店名称一样,我需要从酒店中选择* hname = hotelname。

如果我继续检查所有可能的条件,那么它将长达63种组合可能!那有什么出路吗?请帮忙!感谢。

2 个答案:

答案 0 :(得分:0)

您应该编写一个循环输入变量的方法,并查找有效的列名,而不是单独处理每个输入。然后确保在SQL(mysqli,PDO)中使用预准备语句。

要检查特定的输入变量,您应该执行

if (isset($_POST['var']) && !empty($_POST['var']))

如果每个字段都需要特别关注或单独的数据库表,那么您很可能需要单独处理每个字段。

最终取决于您的需求。但根据我的经验,总有一种方法可以用语法进行。

答案 1 :(得分:0)

在代码中构建查询时,只包含包含值的项目。

您正在动态构建查询,不是吗?