传统的来说:我们做站内搜索开发都是用form表单提交的,这样一次性就可以提交,你已经选择好的多个参数,这有利功能的实现;
对现在的网络来说,我们更需要注重的是用户体验,所以我们只有把搜索的条件参数作为一个a链接铺开,这样容易浏览者的操作,现在遇到的问题是:如何把那些条件参数加起来作为多条件查询,因为每点击一个链接,需要判断参数是对应数据库那一个字段,接着为其它链接下次点击生成新的链接,这样的动态生成链接是一个很困难的事情,谁也不清楚用户每次查询都是点击那一个链接;
谁能解救我呢?急救。。
功能参照:http://guangzhou.anjuke.com/sale/的搜索功能

解决方案 »

  1.   

    请看页面URL,第一次,每个条件赋初始值,$_GET获取搜索条件,然后每次判断并附加不同条件在URL参数上.
      

  2.   

    这样是一种思路,但是否有想过,如果参数的条件有很多,那么要判断多少次,这是一个动态的生成链接的问题,如果是按照这样去判断的话,我什么时候才能判断完,传递的参数条件?对吧,况且这是需要做伪静态的,$_GET获取不了参数。
      

  3.   

    如果你也想深入的了解一下,你可以到这个网站去看看,我的网站的搜索功能就需要这样的功能
    http://www.1000homes.cn/google,这是我的网站,引用功能的网站:http://guangzhou.anjuke.com/,谢谢你!
      

  4.   

    参数多的话,可以json_encode,然后当做一个参数传递,在接收端json_decode。
      

  5.   


    http://product.pconline.com.cn/notebook/先别否定别人,看看这个
      

  6.   

    json_decode是对数组进行分析的吧?
    a 链接传递应该是一串字符串的,很感谢你的回答,请问是否有好的方法?
      

  7.   

    我是说你可以传递数组参数。对现在的网络来说,我们更需要注重的是用户体验,所以我们只有把搜索的条件参数作为一个a链接铺开这样的用户体验对用户来说是最佳的么?
    我也是用户,为什么我感觉这种不好呢,多条件搜索还是感觉多个input框好,像这样。    * 选择分区:  ?    选择版面:  ?
        * 标题含有:  ?     AND  ?
        * 标题不含: ?
        * 作者账号: ?
        * 最后回复:  ? 天以内
          搜索最大的问题就是sql的拼接了
      

  8.   

    你也很赞同你的说法,但只要你到这个网站看看就知道a链接是比较方便的。
    我不是在作广告,请大家不要误会了。
    网站地址:http://shenzhen.anjuke.com/sale/
    你看了之后就会清楚。
      

  9.   

    对的,是url重写,但这个功能对我来说很复杂。
    参考网站的地址:
    我不是在作广告,请大家不要误会了。
    网站地址:http://shenzhen.anjuke.com/sale/
    你看了之后就会清楚。
      

  10.   

    看到有人问类似问题,特意写了个简单示例,看看怎样?$pre_url = $_SERVER['HTTP_REFERER'];
    $t = parse_url($pre_url);
    $a1 = array();
    $a2 = array();parse_str($t['query'],$a1);
    parse_str($_SERVER['QUERY_STRING'],$a2);$sort = array('a','b','c','d');//初始排序if (!empty($a2['sort'])){
    $t = explode(',', $a2['sort']);//请求方式
    $t1 = array_diff($sort, $t);
    foreach ($sort as &$v){
    if (in_array($v,$t)){
    $tmp = array_diff($t, array($v));
    if (!empty($tmp))
    $v .= ','.implode(',', array_diff($t, array($v)));
    }else{
    $v .= ','.$a2['sort'];
    }
    }
    }
    echo sprintf('
    <a href="%s">clear</a>
    <a href="?sort=%s">a</a>
    <a href="?sort=%s">b</a>
    <a href="?sort=%s">c</a>
    <a href="?sort=%s">d</a>
    ',$_SERVER['PHP_SELF'],$sort[0],$sort[1],$sort[2],$sort[3]);