codeigniter uri/路由器检查
我使用的是codeigniter uri/路由器检查,codeigniter,session,uri,Codeigniter,Session,Uri,我使用的是codeigniter,有一个控制器,我在其中分配了一些搜索条件以存储在会话中,如下所示: $srchCriteria = array( 'stockCode'=>$this->input->post('srchScode'), 'qty'=>$this->input->post('srchQty'), 'class' => $this->router->fetch_class(
codeigniter
,有一个控制器,我在其中分配了一些搜索条件以存储在会话中,如下所示:
$srchCriteria = array(
'stockCode'=>$this->input->post('srchScode'),
'qty'=>$this->input->post('srchQty'),
'class' => $this->router->fetch_class(),
'method' => $this->router->fetch_method(),
);
$this->session->set_userdata('srchCriteria',$srchCriteria);
并根据该标准生成输出。现在,如果用户导航到此页面以外的其他页面,我需要清除此条件。i、 e每次用户访问搜索页面时,应清除搜索条件(分页除外)。为此,我检查了core controller中的类和方法变量,如下所示:
$srchCriteria = $this->session->userdata('srchCriteria');
$className = $this->router->fetch_class();
$methodName = $this->router->fetch_method();
if(!empty( $srchCriteria['class'] ) && !empty( $srchCriteria['method'] )){
if( ($srchCriteria['method'] != $methodName){
$this->session->set_userdata('srchCriteria',array());
}
}
但它不起作用,请用正确的方式引导我。我的错误是什么?尝试
$this->session->unset_userdata('srchCriteria')
而不是$this->session->set_userdata('srchCriteria',array())代码>尝试过,但没有结果。我的问题是检查if循环。天气总是晴朗的。不知道问题所在如果
,是否确定问题出在此中?尝试echo“我在1234行的IF块中”代码>echo'会话中的方法名称为'.$srchCri['Method']代码>echo'方法名称变量为'.$methodName代码>在IF内;是的,我重复了。当有exit关键字时,当exit被注释时,如果我们检查是否相等,它总是进入循环,而在其他情况下,它不会进入循环。比较$this->router->fetch_class()是否有问题?如果($srchCriteria['method']!=$methodName){……。这里没有右括号?