Codeigniter下拉框数据存入session后step4页面无法展示问题求助
问题排查与修复方案
1. 视图输出缺失echo语句(最直接原因)
你在v_step4.php中调用session方法仅执行了取值逻辑,没有打印输出,所以页面看不到内容:
原错误代码:
<?php $this->session->userdata('departemen') ?>
修改为:
<?php echo $this->session->userdata('departemen') ?>
如果你的环境支持短标签,也可以写为:
<?= $this->session->userdata('departemen') ?>
2. Step4控制器未加载session库
你跳转的step4路由对应的控制器如果没有加载session库,也会无法读取到session数据:
- 方案1:全局自动加载session,打开
application/config/autoload.php,修改$autoload['libraries']配置,加入session:$autoload['libraries'] = array('session'); - 方案2:在Step4控制器的构造方法中手动加载session:
public function __construct() { parent::__construct(); $this->load->library('session'); }
3. asal下拉框缺失value属性
v_step1.php中的kode_asal下拉框的option没有配置value属性,提交后你拿到的kode_asal值为空:
原错误代码:
<option> UMUM </option> <option> KELUARGA YAYASAN </option>
修改为:
<option value="UMUM"> UMUM </option> <option value="KELUARGA YAYASAN"> KELUARGA YAYASAN </option>
4. 检查session基础配置
如果以上修改完成后仍有问题,检查application/config/config.php中的session配置:
- sess_driver配置对应驱动正常
- 若使用file驱动,
sess_save_path对应的目录拥有读写权限 - 域名、cookie配置符合当前运行环境要求
补充小提示:你视图中下拉框的默认option属性diselected为拼写错误,正确写法是selected,不过这个问题不影响session数据的读写,仅影响默认选中效果。
内容的提问来源于stack exchange,提问作者Andrian_Must
相关产品推荐
相关产品推荐

