Codeigniter无法将值传递给控制器

时间:2012-10-12 12:31:51

标签: php codeigniter controller

我有意见

 <?php echo form_open('c_kategorimaterial/tambah'); ?>
            <table>

                <tr>
                    <td>Kode Kategori Material / Jasa</td> //primary key of table
                    <td><?php $inkode=array('name' => 'kkmj', 'disabled' => 'disabled', 'value' => $nextval, 'class' => 'GUI'); echo form_input($inkode) ?></td>
                    <td class="error"> <?php echo form_error('kkmj'); ?></td>
                     //i make the form_input disabled, because the value is
                     //auto generated from the last ID of table in database
                </tr>
                <tr>
                    <td>Nama Material / Jasa</td>
                    <td><?php $innama=array('name' => 'nmj',  'class' => 'GUI'); echo form_input($innama) ?></td>
                    <td class="error"> <?php echo form_error('nmj'); ?></td>
                </tr>
                <tr>
                    <td></td>
                    <td><?php $intambah=array('name' =>'login','class' =>'button','value' => 'Tambah'); echo form_submit($intambah); echo nbs(); $inreset=array('name' =>'reset','class' =>'button','value' => 'Hapus'); echo form_reset($inreset); ?></td>
                </tr>
             <?php echo form_close(); ?>

并将值传递给控制器​​

 function tambah()
{
   $id = $this->input->post('kkmj');
   $nama = $this->input->post('nmj');

    $this->form_validation->set_rules('nmj','Nama','trim|required|min_length[2]|max_length[20]|xss_clean');
    if($this->form_validation->run() == false)
    {
        $lastval = $this->m_admin->getlastval('KKMJ','ms_kategori_material','kode_kategori_material_jasa');
        $data['nextval'] = $this->m_admin->gencode('KKMJ',3,$lastval); 
        $data['title'] = 'QB Tambah Kategori Material';

        $this->load->view('head',$data);
        $this->load->view('content/add_kategori_material',$data);
    }
    else
    {
        echo 'id adalah '.$id.' namanya adalah '.$nama; //$id is not printed

    }


}

然后我用'water'填充第二个字段并单击按钮。我的页面显示空白的白色屏幕,文字为id adalah namanya adalah water

怎么没有打印ID?我该如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

提交表单时,不会发布已禁用的元素。如果您需要具有不可更改值的字段,请尝试将其设置为read-only而不是禁用。

答案 1 :(得分:2)

因为该字段已被禁用。

使用readonly属性。