在PHP中输入SQL输入并将查询结果输出到页面

时间:2011-07-24 09:19:46

标签: php mysql

基本上我正在寻找使用PHP创建一个将输入SQL的页面,并输出由DB(MySQL)返回的结果。这不适用于生产网站(我理解安全隐患)。它更适合学习和练习。有点像phpMyAdmin的SQL控制台部分,甚至类似于sqlzoo.net可以做的事情(我认为他们使用的是perl,但我想用PHP做)。有没有切实可行的方法来实现这个目标?

例如,当我不知道查询将返回多少列时,如何在PHP / HTML中创建页面以显示结果表?

此外,允许访问者使用原始数据将数据库恢复到默认状态的最实用方法是什么? (例如,创建一个原始状态的sql转储并创建一个运行它的按钮?还是有更好的方法?)

谢谢!

3 个答案:

答案 0 :(得分:1)

您可能必须运行至少两个查询...首先使用LIMIT 1返回一行,并计算返回的元素(如果使用mysql $ row = fetch_row($ handle)),则使用PHP计数($ row)对列进行计数,您可以使用SQL COUNT()来查找将返回的行数。

至于将数据恢复到原始状态,我认为从你说的转储中删除/重新创建可能是最简单和最可靠的选择。

答案 1 :(得分:1)

在SQL查询中使用*来获取所有列,并使用foreachmysql_fetch_row()mysql_fetch_assoc()循环结果。 除此之外,你有没有想过使用mysql CLI?它对这些要求很有用。 这个问题应该比现在更具体。

“创建一个原始状态的sql转储并创建一个运行它的按钮?” - 是的但请确保删除/删除现有数据。

答案 2 :(得分:1)

您最好的选择就是运行查询,检查行数> 0,然后如果是,则在foreach中循环查询结果集,只显示你喜欢的任何内容。