0

我正在尝试使用 codeigniter 编辑我的表单字段。提交的值首先显示视图,然后编辑信息。但是当我提交表单时出现以下错误

遇到 PHP 错误

严重性:通知

消息:未定义的偏移量:0

文件名:views/tupdate.php

行号:46

在第 46 行我有

 <input type="hidden" name="id" value="<?php echo $info[0]->id  ?>">

我的控制器:

 function update($id = 0)
 {
   $data['info'] = $this->trainingUpdate_model->getdata_by_id($id);

   $this->load->view('tupdate', $data);
 }


function super()
{
    $id=$this->input->post('id');
    $data['title']=$this->input->post('title');
    $data['training_description']=$this->input->post('training_description');

    if ($this->trainingUpdate_model->update($id, $data)==TRUE)
    {
      $this->load->view('traing_update_success');
    }
    else
    {
      $this->load->view('S_unsuccess');
    }
}

我的模型:

 function getdata_by_id($id = 0)
 {
    $this->db->where('id',$id);
    $sql = $this->db->get('training');
    return $sql->result();
 }


 function update($id,$data)
 {
   $this->db->where('id', $id);
   $this->db->update('training', $data);

   if ($this->db->affected_rows() == '1')
   {
     return TRUE;
   }
   return FALSE;
 }

并查看:

 <form action="trainingUpdate/super" method="post">

   <input type="hidden" name="id" value="<?php echo $info[0]->id  ?>">
   Title Name:<input type="text" name="id" value="<?php echo htmlspecialchars($info[0]->title) ?>">
   Title Name: <textarea type="text" name="overview" value=""><?php echo $info[0]->training_description; ?></textarea>

   <input type="Submit" value="Update">
</form>

我知道为什么信息没有更新以及为什么会出现该错误。

请帮忙。谢谢

由于某种原因,提交的值没有进入 trainingUpdate/super() 方法,提交的数据从该方法传递给模型。from 将返回相同的视图页面并给出错误。谁能告诉我为什么会这样??再次感谢。

4

1 回答 1

1

如果你只得到一行来更新记录,那么只使用 row() 方法来获取只记录

模型

function getdata_by_id($id = 0)
 {
    $this->db->where('id',$id);
    $sql = $this->db->get('training');
    //return $sql->result();
    return $sql->row();
 }

看法

 <input type="hidden" name="id" value="<?php echo $info->id  ?>">
于 2013-07-19T22:54:22.060 回答