我知道这听起来可能很奇怪,我当然可以解决我的问题。我在服务器端代码上使用 SQL,语句类似于以下内容:
SELECT myCol FROM mytable WHERE myCol2=url_parameter
url_parameter
是通过 URL 传递的字符串。有没有办法设置url_parameter
一些东西,但仍然可以在表格中获得所有事实?
我知道这听起来可能很奇怪,我当然可以解决我的问题。我在服务器端代码上使用 SQL,语句类似于以下内容:
SELECT myCol FROM mytable WHERE myCol2=url_parameter
url_parameter
是通过 URL 传递的字符串。有没有办法设置url_parameter
一些东西,但仍然可以在表格中获得所有事实?
不应该有;如果有,那么服务器端的编写方式允许 SQL 注入攻击,这可能比您要解决的问题更大。
如果您能够修改服务器端代码,那么您可以通过运行不具有 WHERE 条件的查询变体来让它响应某些参数值或参数值组合。或者还有其他选择......但你已经说过你可以解决它,所以我假设你有这些想法之一。
处理此问题的正常方法是使用如下所示的查询:
SELECT myCol
FROM mytable
WHERE myCol2 = url_parameter OR url_parameter IS NULL; -- or url_parameter = '';
如果您正在修改 SQL 字符串而不是传递参数,则可以myCol2
在想要获取所有值时插入值(不带引号)。但是,您应该使用参数。