【xuzuning 】版主求教,有问题啊,各位高手围观。
本帖最后由 u010572351 于 2013-06-23 13:23:38 编辑 昨天请教了如何实现多条件下分类检索,
http://bbs.csdn.net/topics/390497100
后来我做出来了,但是新的问题出现了,而且是比较致命的弊端,想再请教下。
问题1:
1.url上面只显示当前点击的链接,因为参数是放在session里面的,每个链接都是当前链接的参数,好像其他网站不是这样的,他们是所有参数的结合。
2.这个问题是最重要的,就是用户点击的参数放在session,如果用户搜索了一把,但是没有关闭浏览器,浏览其他页面去了,然后再回来再搜索,那么session仍然有效,就是说他现在的搜索范围已经局限在上次的搜索结果中了。
比如:
用户上次最后的搜索条件是: 只限电影,2012年,国语,然后关闭页面(没有关闭浏览器),过了一会又回来了,他搜索国外的电影,因为现在session还有效,那他是搜索不到东西的,或者说范围是不对的,缩小的,除非他关闭浏览器重来。
感觉不太对劲儿啊。。。。。
[解决办法]
你需要在那个帖子 #4、#16 的代码基础上修改
[解决办法]
为何不用js拼接url串呢?
[解决办法]
多条件筛选,我第一次听说要用session的
无语
就一个简单的url拼接而已
什么时候用得到session了
我打一个很简单的例子
<?php
$a=$_GET['a']
$b=$_GET['b']
$c=$_GET['c']
if($a!=''){
$aurl="&a=".$a
}
if($b!=''){
$burl="&b=".$b
}
if($c!=''){
$curl="&c=".$c
}
?>
<a href="a.php?1<?php echo $burl;?><?php echo $curl;?>">全部</a><a href="a.php?a=1<?php echo $burl;?><?php echo $curl;?>">a1</a>
<a href="b.php?1<?php echo $aurl;?><?php echo $curl;?>">全部</a><a href="b.php?<?php echo $aurl;?>&b=1<?php echo $curl;?>">b1</a>
<a href="c.php?1<?php echo $aurl;?><?php echo $burl;?>">全部</a><a href="c.php?<?php echo $aurl;?><?php echo $burl;?>&c=1">c1</a>
[解决办法]
无语,代码都给出来了,还说怎么实现
[解决办法]
用jS动态的拼出URL应该比较好实现的,
按照你之前给出的页面,可以这样实现:
1、模板页面 新建三个 隐藏域
<input type='hidden' id='type' value='' />
<input type='hidden' id='area' value='' />
<input type='hidden' id='time' value='' />
2、在类型、时间和地区的点击事件中新加一个URL生成的JS函数,
此函数的功能是:判断哪些标签被选中(按照你给出的页面这个功能已实现,应该也很好实现),把选中的标签对应的值写到相应的隐藏域中,譬如:“类型”中的“爱情”被选中,那么id='type'隐藏域的值就写入数据库中影片爱情的typeid。最后把这些隐藏域的id和value拼接处你想要的url。
没有写代码,简单写个思路,希望有帮助
[解决办法]
先给js赋值一条url,参数就是页面打开时状态选择了什么,不要说你不知道,那是php echo出来的
然后客户端的选择动作,选择了一个参数,如果这个参数在url中不存在,就拼接,存在就replace
最后整条url提交就是了