3

そのため、セッションの変数値をビューに出力しようとしています(存在する場合のみ)。しかし、私はそれを機能させることができないようです。エラーはありません。何もない。私は何が欠けていますか?私はこれを今までに詰め込んだと思っていました-推測しないでください...

コントローラ...FYIでは、$ 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が存在するかどうかを制御する必要はありません。存在しない場合は何も出力されません。causeuserdata()メソッドは戻りますfalse

そうすれば、セッションデータを通過させる必要はありません。$data[] arrayセッションデータはどこからでも取得できます(モデル/コントローラー/ビュー/フック/ライブラリ/ヘルパーなど)。

于 2012-11-20T17:40:10.053 に答える