php
  • javascript
  • 2012-07-25 114 views 0 likes 
    0

    我正在建立一个新的网站来学习编码,并为每个搜索应用程序的页面创建一个结果。所以基本上,我有一个选择/下拉列表看起来像这样:在多个页面上存储选择/下拉值

    <form name='form1' method='post'> 
         <font style="font-size:12px;">Results per Page:</font> 
         <select name='select' onChange='document.form1.submit()'> 
           <option value='10'<?php if($pagesnum == 10) {echo "selected='selected'";} ?>>10</option> 
           <option value='15'<?php if($pagesnum == 15) {echo "selected='selected'";} ?>>15</option> 
          <option value='20'<?php if($pagesnum == 20) {echo "selected='selected'";} ?>>20</option> 
          <option value='25'<?php if($pagesnum == 25) {echo "selected='selected'";} ?>>25</option> 
         </select> 
    </form> 
    

    这只是走的是用户期望的每页结果数,一旦他们改变选择/下拉列表的页面被刷新。然后,我将每页的用户结果数据存储到一个名为$ pagesnum的变量中,或者如果没有设置每页结果,只需将$ pagesnum设置为10即可(它位于页面的顶部):

    if ($_REQUEST['select'] != null){ $pagesnum = $_REQUEST['select'];}else{$pagesnum = 10;} 
    

    然后,我在我的分页,(其中,如果你在这里需要它,我可以张贴),使每个页面的总结果或$总页数等于$ pagesnum这样的:

    $total_pages = $pagesnum; 
    

    我的问题是,我有一个精确搜索,建议链接到像search.php这样的页面的相关搜索术语?q = A + Link + That +是+ a +不同+页面,$ pagesnum的值会丢失。 $ pagesnum并拥有它跨多个页面设置?

    回答

    1

    请看PHP Sessions,这里有一个如何应用它的例子。

    session_start(); 
    if(!empty($_REQUEST['select'])){ 
        $pagesnum = $_REQUEST['select']; 
        $_SESSION['pagesnum'] = $pagesnum; 
    }else{ 
        $pagesnum = $_SESSION['pagesnum']; 
    } 
    

    你可以使用上面的代码,而不是这个

    if ($_REQUEST['select'] != null){ $pagesnum = $_REQUEST['select'];}else{$pagesnum = 10;} 
    
    +0

    谢谢,一定会看看! – infinity 2012-07-26 00:09:15

    1

    你可以想想在会话中存储阵列,如果你有多种选择下拉

    否则只是一个会话变量足够

    http://www.phpriot.com/articles/intro-php-sessions/7

    相关问题