如何配置/应用条件到我的查询以获得结果?

时间:2011-04-19 14:05:48

标签: php mysql

如何配置我的查询。

$query_event ="SELECT * FROM event_list WHERE even_title='$EventTitle' AND even_loc='$EventLocation' ";

现在假设有一种形式需要在表单中放置标题或放置位置,或者你可以将两者都放在空白中,那么查询的内容是什么?

请帮忙

感谢

2 个答案:

答案 0 :(得分:1)

创建一个起始查询,然后添加where子句

$query_event = "Select * from event_list where 1";

if ( $EventTitle ) {
    $query_event .= " and even_title='$EventTitle'";
}

if ( $event_loc ) {
    $query_event .= " and even_loc='$EventLocation'";
}

答案 1 :(得分:0)

如果以这种方式传递查询,那么您将非常容易受到SQL注入的攻击。<​​/ p>

例如,如果有人在搜索屏幕中输入"'; DELETE FROM EVENT_LIST"作为事件标题,他就可以删除整个表格。

使用这些建议来保护您的数据: https://www.owasp.org/index.php/PHP_Top_5#P3:_SQL_Injection