-1

I am working on PHP application.i have a search from in which user can select many options to refine his search like month,year,group,departement etc.

Now user submits the forms and gets the results based on his search options.User navigates to other forms in the application.When user comes back to search page i need top present him the old search options.

Please share your thoughts on it

4

3 回答 3

2

执行此操作的常用方法是使用$_SESSION.

对于他进行的每次搜索,都会在会话中保存他的所有选项,然后将他选择的内容应用到您的表单中。

例如:

foreach($department as $key => $val){
    $selected = '';
    if($key == $_SESSION['department']){
        $selected = ' selected="selected"';
    }
    echo '<option value="'.$key.'">'.$val.'</option>';
}

在他提交表单后,您设置了该会话:

$_SESSION['department'] = $_POST['department'];
于 2012-09-18T10:51:12.343 回答
0

在这种情况下,您可以使用session来存储搜索查询。

每当您更改搜索条件时,都会更改session.

但这不是一个好的做法,根据您的要求,这是最好的解决方案。

另一件事是您可以将搜索条件附加到 URL,这是最好的和首选的。

于 2012-09-18T10:51:17.520 回答
0

您可以使用会话或 cookie 来执行此操作。当您提交表单时,只需将数据存储在会话或 cookie 中,当表单正在构建时,只需检查会话值是否存在。如果存在,只需将元素的值放入相应的表单元素(文本框、文本区域等)中。

<input type="text" value="<?php if((isset($_SESSION['location'])) && ($_SESSION['location'] != '')) echo $_SESSION['location']; ?>" name="location" />

因此,当用户在搜索后重新导航时,将能够看到他/她的搜索值,因为它们将出现在表单字段中。

于 2012-09-18T10:55:56.047 回答