类似58这种条件筛选通过PHP程序怎么实现呢,哪位告诉下,通过笨办法倒是可以实现,但是那种就是太耗时而且冗余代码还多,不知道哪位高手能有更好办法,谢谢!
回复讨论(解决方案)
怎么没人呢?
笨方法是什么方法?
这种需求,将筛选条件拼接起来就可以实现了, 比如没有任何条件的时候
select * from tbl_name where 1=1
如果选择了一个区域,sql语句就变成
select * from tbl_name where 1=1 and area = ”XXX“
在选择一个方式, sql语句就变成
select * from tbl_name where 1=1 and area = ”XXX“ and type=1
多种条件一直拼在sql语句后面就行了。
你可以考虑URL传参,也可以考虑直接写入cookie或者session进行操作,然后再针对存在的数据拼装sql。我是这么认为的,但是具体还是看需求。
看来回答的人很少啊
还是没人呢,哪位大侠帮帮忙吧,谢谢了
其实这个问题很大,服务端和客户端都涉及到了
服务端主要是如何生成查询语句
客户端如何确定传值的样式
而你什么具体要求都不说,难道然人加给你写本书?
ajax或者Frame点击一次提交一次
类似这样的形式?
那你可以组合拼装sql
其实这个问题很大,服务端和客户端都涉及到了
服务端主要是如何生成查询语句
客户端如何确定传值的样式
而你什么具体要求都不说,难道然人加给你写本书?
楼主,具体的我都已经写出来了,现在主要就是数据拆分,可以到www.0971my.com/wskh.php上面看下
强烈建议 php+sphinx 你值得拥有
我以前弄过一个,你自己看看改下就行了
//删除GET参数if(isset($_GET['act'])) { $k = substr($_GET['act'], 3); unset($_GET['act']); if($k == 'all') $_GET = array(); else unset($_GET[$k]);}/*获取GET参数*/function getparam($k) { $param = $_GET; if(isset($_GET[$k])) unset($param[$k]); $param[$k] = ''; return http_build_query($param);}
这个$param用法,'.$quyu['title'].'
剩下的就是拼SQL语句了。