保留php中的用户搜索选项

时间:2012-09-18 10:47:38

标签: php

我正在开发PHP应用程序。我可以搜索用户可以选择多个选项来优化他的搜索,例如月,年,组,部门等。

现在用户提交表单并根据他的搜索选项获取结果。用户导航到应用程序中的其他表单。当用户返回搜索页面时,我需要向他提供旧的搜索选项。

请分享您的想法

3 个答案:

答案 0 :(得分: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'];

答案 1 :(得分:0)

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

每当您更改搜索条件时,请更改session

中的搜索查询

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

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

答案 2 :(得分:0)

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

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

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