我正在开发PHP应用程序。我可以搜索用户可以选择多个选项来优化他的搜索,例如月,年,组,部门等。
现在用户提交表单并根据他的搜索选项获取结果。用户导航到应用程序中的其他表单。当用户返回搜索页面时,我需要向他提供旧的搜索选项。
请分享您的想法
答案 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" />
因此,当用户在搜索后重新导航时,将能够看到他/她的搜索值,因为它们将出现在表单字段中。