3

所以我试图将会话的变量值输出到视图中(仅当它存在时)。但我似乎无法让它工作。没有错误。没有什么。我错过了什么?以为我现在已经收拾好这个了-猜不...

在控制器...仅供参考, $data 被分配给视图(即$this -> load -> view('view', $data);

$data['campaign_name'] = $this -> session -> userdata('campaign_name');

这是我试图输出的视图中的 php 片段。所以简而言之,如果会话存在,则输出它。如果没有,什么也不做。

<input type="text" name="campaign_name" class="wizardInput nameField" value="<? if (isset($campaign_name)) ;?> ">

任何人?

编辑好的,我应该提到我正在尝试将会话值输出为 FORM 值。修改了上面的视图代码。表单就像值在那里一样提交 - 甚至发送值。但是,它在文本输入中不可见...

4

1 回答 1

8

在您看来,您可以轻松做到这一点:

if($this->session->userdata('campaign_name')){
 // do somenthing cause it exist
}

然后,如果您想将会话数据作为输入的值,请执行以下操作:

<input type="text" name="campaign_name" class="wizardInput nameField" value="<?php echo $this->session->userdata('campaign_name') ?>">

不需要控制会话用户数据是否存在,因为如果它不存在,它不会打印任何内容,导致userdata()方法返回false

然后你不需要通过 传递会话数据$data[] array,因为可以从任何地方检索会话数据(模型/控制器/视图/钩子/库/助手等)

于 2012-11-20T17:40:10.053 回答