拥有 20,000 本书数据库的客户端有一个 75 页的菜单/子菜单系统。每个页面几乎相同,但需要加载相关的 SQL 查询。
有没有办法让每个菜单项在其 URL 链接中都带有关键字,而只需要一个页面接受每个菜单 URL 的相关搜索参数?
问题是如何将要查找的三个可能的关键字(菜单、子菜单和子子菜单)添加到 URL 中。第一个关键字有效,但无法使 AND 或 & 符号起作用,也不能让 NOT EQUAL (<>)
http://www.wherever.com/search-results-keywords.php?keywords=Uniforms_and_keywords<>已售出
顺便说一句,事情不可能这么简单,否则你可以破解任何数据库?
使用查询字符串 (
GET
) 时,请确保正确编码查询字符串
示例:
var url = "http://www.website.com/search.php?" + encodeURIComponent(params);
POST
可能更安全,因为您使用参数来查询数据库
提供一种轻松的方式与您的sql数据库交互。
与直接将 SQL 查询放入 URL 相比,http://.../?sql="select * from table where id = 'xxx'"
Odata 可以避免 sql 注入,但是你不能做 sql 能做的所有事情,
换句话说,Odata 有 limit 功能,而 sql 可以执行所有操作,
或者你甚至可以将存储过程(一堆sql)放入URL查询字符串中。
但是你必须开发一些东西来防止sql注入。