Codeigniter选择框不填充会话值

时间:2012-07-14 07:54:10

标签: php codeigniter session select

我遇到了Codeigniter的session问题。

我有一个包含选择框的表单来执行搜索。提交表单时,搜索条件存储在会话中,用于在用户返回表单后填充表单字段。在我的本地机器上,它工作正常。但在服务器中,它不适用于选择框。只清除浏览器缓存后,它才有效 我刚刚回应了会话变量。在表格之外。它保存了正确的数据。在Firebug中,它也显示了正确的值 - <option selected="selected">foobar</option>。但是我无法在选择框中看到所选的值 仅供参考 - 我使用以下CI表格助手打印选择框。

<?php echo form_dropdown('product', $search_options['product_list'], 
      stripslashes($this->session->userdata('qes_product')), 
      'id="qes_product" tabindex="1"'); 
?>

任何想法?

1 个答案:

答案 0 :(得分:0)

1)确保您的会话使用数据库存储而不是cookie。 Cookie的大小有限,如果您做错了,意味着不更换值但不断将它们添加到会话中,那么它就会变满。这是您应该研究的其他内容(您在会话中存储的内容)

2)请勿在视图中使用$ this-&gt;会话。将所有内容存储在会话中的数组(如$ formdata)中,然后在控制器中检索它并将其传递给您的视图。

您可以使用$formdata['ques_product']

在表单中访问它

如果上述方法无效,请尝试在会话配置中更改sess_expire_on_close的值。 CI中似乎有一个奇怪的错误。

祝你好运!