【发布时间】:2011-09-08 21:29:54
【问题描述】:
我创建了一个 SQL 页面,用户可以在其中运行 SQL 查询。我的问题在于我不知道用户将输入哪些列。因此,我无法显示他的要求。 就像他的查询是:select id from emp;我怎么知道他输入了什么列名并因此将其显示在结果页面中。 这是您可以使用并帮助我的确切查询。我在我的代码中使用了许多 IF 案例。 例如: if(strpos($query,"id")) 然后它显示 id 列。 请帮我。 并提前感谢!
【问题讨论】:
-
我很想查看查询历史记录以了解各种攻击
-
不确定你想在这里做什么
-
通常情况下,您应该能够使用
mysql_num_fields和mysql_field_name函数从查询结果中获取列标题列表。 -
@pinouchon 我的第一个想法是在字段中输入“drop database x” :) 另一方面,他实际上可能正在解析输入的查询以只允许某些事情。
-
@Aleks G 当我看到这种网站时,我无法抗拒