codeigniter视图,添加,更新和删除

时间:2010-08-18 05:11:46

标签: codeigniter addressbook

我是codeigniter的新手,还在学习。任何人都可以帮助您在基本视图中进行示例,添加,更新,删除操作以及在codeigniter中查询将很高兴。

就像为新手创建地址簿一样简单。

感谢,

最好的问候

2 个答案:

答案 0 :(得分:5)

Codeigniter中的一些示例查询

class Names extends Model {
  function addRecord($yourname) {
    $this->db->set("name", $yourname);
    $this->db->insert("names");
    return $this->db->_error_number(); // return the error occurred in last query
  }
  function updateRecord($yourname) {
    $this->db->set("name", $yourname);
    $this->db->update("names");
  }
  function deleteRecord($yourname) {
    $this->db->where("name", $yourname);
    $this->db->delete("names");
  }
  function selectRecord($yourname) {
    $this->db->select("name, name_id");
    $this->db->from("names");
    $this->db->where("name", $yourname);
    $query = $this->db->get();
    return $this->db->result();
  }
  function selectAll() {
     $this->db->select("name");
     $this->db->from("names");
     return $this->db->get();
  }
}

codeigniter active record documentation中有关CRUD的更多信息和更多方法 有关错误编号超过here

的详细信息

样本控制器

class names_controller extends Controller {
   function addPerson() {
      $this->load->Model("Names");
      $name = $this->input->post("name"); // get the data from a form submit
      $name = $this->xss->clean();
      $error = $this->Names->addRecord($name);
      if(!$error) {
         $results = $this->Names->selectAll();
         $data['names'] = $results->result();
         $this->load->view("show_names", $data);
      } else {
         $this->load->view("error");
      }
   }
}

有关here

以上的控制器的更多信息

示例视图 - show_names.php

<table>
  <tr>
    <td>Name</td>
  </tr>
  <?php foreach($names as $row): ?>
  <tr><td><?ph echo $row->name; ?></td></tr>
  <?php endforeach; ?>
</table>

有关here

上的codeigniter视图的更多信息

答案 1 :(得分:3)

您可以将此作为示例

class Crud extends Model {
    // selecting records by specifying the column field
    function select()
    {
        // use $this->db->select('*') if you want to select all the records
        $this->db->select('title, content, date');
        // use $this->db->where('id', 1) if you want to specify what row to be fetched
        $q = $this->db->get('mytable');

        // to get the result
        $data = array();
        // for me its better to check if there are records that are fetched
        if($q->num_rows() > 0) { 
            // by doing this it means you are returning array of records
            foreach($q->result_array() as $row) {
                $data[] = $row;
            }
            // if your expecting only one record will be fetched from the table
            // use $row = $q->row();
            // then return $row;
        }
        return $data;
    }

    // to add record
    function add()
    {
        $data = array(
           'title' => 'My title' ,
           'name' => 'My Name' ,
           'date' => 'My date'
        );

        $this->db->insert('mytable', $data); 
    }

    // to update record
    function update()
    {
        $data = array(
           'title' => $title,
           'name' => $name,
           'date' => $date
        );

        $this->db->where('id', 1);
        $this->db->update('mytable', $data); 
    }

    // to delete a record
    function delete()
    {
        $this->db->where('id', 1);
        $this->db->delete('mytable');
    }
}

其中一些来自codeigniter userguide

要查看记录,

如果返回数据是记录数组,

   foreach($data as $row)
   {
       echo $row['title'] . "<br />";
   }

如果返回数据是一个对象(使用$q->row),

   echo $data->title;

这只是Codeigniter中的一些示例或CRUD。访问codeigniter userguide