从模型向控制器

时间:2016-05-23 08:02:24

标签: php codeigniter

我在codeigniter中创建一个应用程序。当我从模型到控制器点击提交按钮时,我试图传递存储在变量中的值。

我怎样才能做到这一点?到目前为止,我已尝试过以下代码:

model.php

public function loadadd($mekhala_Id) {

      echo  form_open('Payment/amount($count)'); 
      $query = $this->db->get_where('tb_unit', array('mandalam_Id' => $mekhala_Id));
      echo $count= $query->num_rows();
    ?>

 <h1>Members List</h1>
        <table border="1">
            <tr>
                 <th>Unit</th>
                  <th>Unit Secretary</th>
                 <th>Amount paid</th>

            </tr>
            <?php

    foreach ($query->result() as $row)
    {
        //$i=1;
        ?>

            <tr>
                <td> <?php echo $row->unitName ;?></td>
                        <td> <?php echo $row->unit_sec ;?></td>
                       <td> <?php echo form_input(array('name'=>'na','placeholder'=>'Rupees Paid')) ;?></td> 
                       <td><?php echo form_checkbox(array('name'=>'check','value'=>'paid')) ; ?></td>
            </tr>

            <?php
   // $i++;
}
                        // echo $query->result();
                                                                                                     echo form_submit(array('name'=>'sub','value'=>'submit'));
                        echo form_close();
}
           public function loadpayment($paid,$count){




              for($i=1;$i<=$count;$i++)
            {
               $a='na'.$i;
               $paid=array($this->input->post($a));
              $this->db->insert('tb_unit',array('Amount'=> $paid));
          }


          }
          }

?>  
                                      controller.php                                                                                                                                                                  public function amount($count) {

                  $paid=$this->input->post('na');

                   $this->cms_model->loadpayment($paid,$count);
                       } 

正在显示以下代码:

  

遇到错误

     

您提交的URI不允许使用字符。

1 个答案:

答案 0 :(得分:0)

我认为你应该再次阅读模型,视图和控制器的主要思想。 模型的想法只适用于数据库。您不在模型中使用form_open()或其他html,这应该在视图中完成。 This tutorial显示了更多详细信息。

要使用提交传递值,您可以使用表单中的隐藏字段显示为here

要在单击提交按钮时传递变量中的数据:您可以将变量设置为值属性:echo form_submit(array('name'=>'sub','value'=>"$variable"));