这个问题困扰我许多天了,想了很多办法,想到用变量存搜索后的数据,但是不么,如图,条件有3-4个,求思想?? 谢谢

解决方案 »

  1.   

    第一种: 用表单提交, 这样就避免了问题
    第二种: 提交时用javascript动态的获取参数(搜索返回时填充页面表单)
      

  2.   

    我用过第一种,有POST提交搜索,可行,但是点击下一页时,条件全部消失~  后我又想到用POST提交之后,给分页加个参数,将POST提交的参数放到分页上如:
    ?action=search&username=姓名&page=2
    这样做第二页也可以,但是到第三页又抓不到username,username显示为空
    ?action=search&username=&page=2
      

  3.   

    分页,当跳转下一页时一般是带着参数跳转的。
    $value = $_POST['xx'];
    额,smarty这是模板
    $hash['value']=$value;<input type='text' value={{$value}}/>
    ______________________________________________
    原理就是必须把你的参数保存下来,一直带着参数跳转
      

  4.   

    最简单的方式 让你的表单直接用get方式提交$value = $_GET['xx'];然后把值跟在你的分页url后面
      

  5.   

    下一页时你要接受GET参数就可以了。
      

  6.   

    搜索用get提交,或者用post提交,程序接受用request
      

  7.   

    如果不用cookie的话,可以在点击下一页的时候传递相应的参数。
    你的参数之所以会丢失是因为你只使用了一种post方式取值,现在改成这样:$value = isset($_POST['value'])?$_POST['value']:(isset($_GET['value'])?$_GET['value']:'');
    意思是:如果点击搜索按钮,就取post的值,否者(点击下一页)时,就取get传递的参数值。其中你要传递的参数都要在点击下页时传递。这样不会丢失值了。
      

  8.   

    在代码里面得到这些参数之后,查询数据库的时候动态的查询,比如,每页显示10条数据:$sql="SELECT xxx FROM table WHERE username='".$_GET['username']."' LIMIT ".($_GET['page']-1)*10.", 10";
    //这只是思路,实际用的时候要把$_GET里面的值过滤一下然后再查询其实网上很多的分页代码,你可以搜索一下,分页的代码结合查询数据库,每页显示的时候就只取出本页的数据库记录,显示
      

  9.   

    分页是正常显示的,但是就是在搜索时,保存不了条件现在我用存取,很奇怪的时,第一页可以,但是在第二页又没了,我用echo $SESSION['username'] 没有数据了$SESSION['username'] = $_POST['username']; 
      

  10.   

    备注:我看到CSDN搜索也是另开一页面搜索~,同时我看到火车站的一个网站是在同一页面(用滚动条),不过他们把所有的数据都显示在同一页面,没有分页如果可以的话,我想看看你们写的程式关于这种同一页面的搜索分页.. 谢谢~~
      

  11.   

    $SESSION['username'] = $_POST['username']; 
    你这样写的话,每次点击下页,值会被冲掉的。。(因为点击下一页的时候没有post请求,所以$_POST['username']不存在),所以这是错误的方法。
    如果你一定要用session你可以加个判断,这样只有点击搜索的时候才有注册session.session_start();
    if(strtolower($_REQUEST['method'])=='post'){//点击搜索
      $_SESSION['username'] = $_POST['username'];  
    }
    最简单的还是不使用session的方式。
    $username = isset($_POST['username'])?$_POST['username']:(isset($_GET['username'])?$_GET['username']:'');连接用?action=search&username={$username}&page=2;
    这样保证不会丢失。
      

  12.   


    我用了这种方法之后,下一页可行了,
    ?action=search&username={$username}&page=2;
    但是再点击第三页的时候
    ?action=search&username=&page=3;
    中的username为空了?? ,条件又消失?
      

  13.   

    $username = isset($_POST['username'])?$_POST['username']:(isset($_GET['username'])?$_GET['username']:'');?action=search&username={$username}&page={$curpage};
    不知道你的分页怎么做的,怎么会丢失呢?
      

  14.   


    Sorry,写法错误,可以保存的~~  我先完善一下.~~ 谢谢