我在不同的页面上有不同的搜索表单,例如在页面上我有一个搜索表单 左手边。 http://www.terra-reisen.com/
同样在预览页面上标题区域中的表单 http://www.terra-reisen.com/web/index.cfm/pm/uebersicht#1
并在详细页面上点击“Termine& preise”标签,可以看到另一种形式。 http://www.terra-reisen.com/web/index.cfm/pm/detail/idobjekt/4799/suchartFrom/uebersicht
现在我想开发的是每页的过滤器容器的kinf。我的意思是如果用户在起始页面上过滤一些数据,例如country = Austrie(在searchform中) 并进入预览页面并再次过滤特定城市和详细信息页面 现在我从详细页面进入预览页面,所选过滤器应该自动应用,类似地从预览到开始应该应用所有文件管理器。
是否存在任何设计模式或类似于此类情境的东西?
答案 0 :(得分:0)
你应该编写一个php脚本来创建一个带过滤器的会话, 此脚本还需要检查该会话是否存在,如果存在,则需要获取过滤器 从中并应用它们。
您可以编写该脚本一次,然后将其包含在所有页面中。 一个例子:
session_start();
$filters = array('location' , 'age' , 'language')
if (!isset($_SESSION['filters'])) {
if(array_key_exists('set_new_filters', $_POST)) //the name of the submit button of the filters form
{
foreach($filters as $filter)
{
$session_filters = $filter.":".$_POST[$filter].";";
}
$_SESSION['filters'] = $session_filters;
}
} else {
$user_filters = explode(";" , $_SESSION['filters']);
/*
$user_filters: Array (
[0] => location:somevalue
[1] => age:somevalue
[2] => language:somevalue
)
*/
}