0

このコードは、CI ユーザー ガイドから取得したものです。

$options = array(
                  'small'  => 'Small Shirt',
                  'med'    => 'Medium Shirt',
                  'large'   => 'Large Shirt',
                  'xlarge' => 'Extra Large Shirt',
                );

echo form_dropdown('shirts', $options, 'large');

// Would produce:

<select name="shirts">
<option value="small">Small Shirt</option>
<option value="med">Medium Shirt</option>
<option value="large" selected="selected">Large Shirt</option>
<option value="xlarge">Extra Large Shirt</option>
</select>

上記のコードを見ると、このコードは問題ないはずです (から取得controller):

$data_search = array('kelas' => 'Kelas', 
                     'nama' => 'Nama',
                     'alamat' => 'Alamat',
                     'bulan' => 'Bulan Lahir');

私の html( view) で:

<?php echo form_dropdown('ddl_search', $data_search, 'id="ddl_search"');?>

しかし、実際にはundifined variable:data_search errorが表示されます。ここで何が起こっているのか説明していただけますか? お時間をいただきありがとうございます:D

4

1 に答える 1

1
<?php echo form_dropdown('ddl_search', $data_search,'', 'id="ddl_search"');?>

もう一度見てみると、id をデフォルト値として渡そうとしていますが、もちろん配列には存在しません。

順番はこんな感じ

form_dropdown('nameOfControl',$dataToPopulateControl,'defaultValueOfControl','additionalParameters');

それらを最後に残すことはできますが、途中で残すことはできません。つまり、追加のパラメーターを省略できます。デフォルト値を省略して追加のパラメーターを追加することはできません。したがって、上部のコードの '' です。

最初に読んだとき、未定義の data_search だと思いましたが、そうではありませんか?

編集された質問を見ると、別の問題もあります。コントローラーからビューにデータを渡す場合、他のデータの配列を保持するコンテナー変数が必要です。

コントローラ:

$data['data_search'] = array('kelas' => 'Kelas', 
                     'nama' => 'Nama',
                     'alamat' => 'Alamat',
                     'bulan' => 'Bulan Lahir');
$this->load->view('whatever',$data);

上記のようにデータをビューに渡すと、$data_search がビューで使用できるようになります。$data は個々の変数 (単一または配列) をビューに渡します。$data 自体はビューでは使用できません。

于 2013-04-06T12:40:32.577 に答える