URL中的MySQL字段

时间:2013-07-20 13:37:54

标签: php mysql select

有没有办法在不使用列名的情况下调用URL中的字段行?

所以我目前有一个发布网站,用户可以从下拉菜单中选择类别或子类别,如何设置我的网站输出所选类别的链接,如..

topics.php?category=Food&sub_cat=Pies
topics.php?sub_cat=Pies

这允许用户转到其中一个链接,或两者都

topics.php?category=Food&sub_cat=Pies

为了提供更多功能,我正在考虑添加文本框而不是下拉,问题是用户很可能在不同的框中输入数据而不是其他用户,即。

用户1. catbox:食物 subcatbox:馅饼 用户2. catbox:Pies subcatbox:食物

所以在这种情况下我的当前网址系统不会返回准确的结果,所以我的问题是有没有办法可以替换“类别”或“子类别”并将结果放在一起而不将它们列在2中-5个不同的字段因此没有返回=该值的所有结果?在这个例子中,“食物”或“馅饼”。

topics.php?xxx=Food&xxx=Pies

或     ?topics.php XXX =馅饼&安培; XXX =食品

如果点击“php”,那么看看主页会把php放到URL中,点击mysql就会把“php + mysql”放到那个东西上。

2 个答案:

答案 0 :(得分:0)

您可以在数据库中使用父子方法。
您的表格就像这样

id - parent_id - category_name - 深度

当你想要向你的表中插入一个数据时,它的深度将是一个加上它的父深度

当有人发布到您的页面时,您首先会查看输入的查询,其中最深入的是那将是您的子类别。

答案 1 :(得分:0)

通过URL中的参数调用字段行可能是一个非常糟糕的主意。这是一种允许大规模SQL注入攻击的完美方式。所以,答案可能是“是的,但很可是请不要!”

现在它可能是你的代码在后端解析这些并通过各种方法保护它们,我无法从发布的代码数量来判断。