0

由于昨天的帖子,当我试图在控制器和视图之间传输一些变量时,今天我试图从表单中获取数据并更新数据库,但在获取这些值时遇到了麻烦。

这是来自控制器的函数,它是从视图的形式调用的

  function updateRecords(){

    $data2=array('name'=>$this->input->post('first_name'),
    'surname'=>$this->input->post('last_name'),
    'contact'=>$this->input->post('contact'),
    'email'=>$this->input->post('email_address'));
            print_r($data2);
     }

当我尝试打印 data2 数组时,我得到: Array ( [name] => [surname] => [contact] => [email] => )

这是视图中的代码:

  <fieldset style="text-align:left">
  <legend><h2>Edit Clients Details</h2></legend>
  <?php
  $this->load->helper('form');
  echo form_open('site/updateRecords');
  echo form_input('first_name', $records['0']->name);
  echo form_input('last_name', $records['0']->surname);
  echo form_input('contact', $records['0']->contact);
  echo form_input('email_address', $records['0']->email);
  echo validation_errors('<p class="error">');
  echo anchor('site/updateRecords','Save');
  echo form_close();
  ?>
  </fieldset>

  <p>
  <?php echo anchor('site/add','Add clients');?>&nbsp;
  <?php echo anchor('site/members_area','Go Home')?>&nbsp;
  <?php echo anchor('login/logout', 'Logout'); ?>
4

2 回答 2

3

代替

echo anchor('site/updateRecords','Save');

尝试使用

echo form_submit('mysubmitname', 'Save!');

anchor 默认不能提交表单数据。如果您使用 ajax,请创建将表单数据序列化并发布到服务器的 javascript 函数。我希望这有帮助

于 2013-01-27T16:25:16.920 回答
1

有几种方法可以访问 id。一种是构建编辑页面调用,使其包含 id。通常,我通过将我的 url 设置为类似于:http ://site.com/client/client_id/edit的编辑页面来做到这一点。或者,您可以在调用表单时将记录的 ID 隐藏在隐藏的表单字段中,然后将其作为帖子的一部分传回。

于 2013-01-28T00:39:36.077 回答