0

DB データの追加/編集に 1 つのビューを使用します。

<input name="blah" id="blah" value="<? set_selected('blah')?> />

編集用のコントローラーでこれを行います:

$_POST['blah'] = 'DB value';
$this->load->view('...');

しかし、入力フィールドは空白です。編集ケースの入力を事前に設定したい。

4

3 に答える 3

2

他の人が述べたように、CI ビューは 2 番目のパラメーターとしてデータ配列を取ることができます。

http://codeigniter.com/user_guide/general/views.html

$_POST 配列を設定してから、それをデータ配列として渡すという考えは好きではありません。$_POST は、UI フォームから渡された値にのみ使用する必要があります。とにかく $_POST 配列を手動で設定する必要があるため、別の配列オブジェクトを使用することもできます。すべての設定値を含む配列を作成します。つまり、array('blah' => $dbvalue); 事前設定された $_POST 配列の代わりにそれを渡します。

次に、コード例では「set_selected()」を使用しています。関数は 'set_select()' であり、オプション タグ用です。したがって、そのコード行には 2 つの問題があります。どちらかである必要があります

 <input .... value="set_value('blah')" />

また

 <option ....value="v1" "set_select('blah', 'v1')">
于 2012-10-01T19:51:29.187 に答える
1

ビューに渡すものはすべて、実際の変数に変換されます。したがって、あなたのコードは次のようになります。

<input name="blah" id="blah" value="<?php echo $blah; ?> />
$_POST['blah'] = 'DB value';
$this->load->view('...', $_POST);
于 2012-10-01T18:41:47.250 に答える
1

ビューに $_POST を渡す必要があります。投稿されたデータは、ビューの読み込み関数の 2 番目のパラメーターでコントローラーからビューに渡される必要があります。これを試して

   $this->load->view('content', $_POST);
于 2012-10-01T18:29:49.770 に答える