Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tìm nạp thông tin từ cơ sở dữ liệu MYSQL &Codeigniter

Có một số điều có thể được làm rõ:

  • Mô hình model là một thực thể tồn tại trong cơ sở dữ liệu. Trong trường hợp của bạn: Tư cách thành viên
  • Một controller chịu trách nhiệm tải mô hình và chuyển nó đến chế độ xem để hiển thị
  • Một view chỉ nên có đánh dấu html, không có chức năng, không có logic.

Cơ sở dữ liệu

Giả sử rằng cơ sở dữ liệu của bạn có cấu trúc bên dưới.

+---------------+-----------+------------+--------------------+
| id_membership | username  | name       | email              |
+---------------+-----------+------------+--------------------+
|             1 | Marishka  | marishkapv | [email protected] |
|             2 | johndoe   | John       | [email protected]       |
|             3 | dennisv   | Dennis     | [email protected]       |
+---------------+-----------+------------+--------------------+

Mô hình

Bạn có thể xây dựng mô hình của mình class Membership extends CI_Model tại /application/models/membership.php tệp.

class Membership extends CI_Model {

    function __construct()
    {
        parent::__construct();
    }

    function member_here()
    {
        $this->db->select('');
        $this->db->from('membership');
        $this->db->where('username',$this->input->post('username'));
        $q = $this->db->get('');

        if($q->num_rows() > 0) 
        {
            $data = array();
            foreach($q->result() as $row) 
            {
                $data=$row;
            }
            return $data;
        }
    }
}

Bộ điều khiển

Giả sử rằng bạn có trang đăng nhập tại example.com/index.php/login , điều này sẽ nằm tại /application/controllers/login.php như bên dưới:

class Login extends CI_Controller
{
    function __construct()
    {
        parent::__construct();
    }

    public function index()
    {
        $this->load->view('login_view');
    }

    public function result()
    {
        $this->load->model('membership');
        $data['member'] = $this->membership->member_here(); 
        $this->load->view('result_view', $data);
    }
}

Có vẻ như các mô hình được tải sẽ ném ra hai dòng sau:

//Load the model in make use of its functions
$this->load->model('membership'); 

//load the row whit the given username
//the result is assigned to array with the key "member", in the view you access this
//value with $member var
$data['member'] = $this->membership->member_here(); 

Lượt xem

Như bạn đã lưu ý trong mã bộ điều khiển, có hai tệp chế độ xem, login_viewresult_view . Đầu tiên sẽ hiển thị một biểu mẫu html nơi bạn có thể đặt tên người dùng để kích hoạt một truy vấn chọn lọc. result_view hiển thị thông tin của thành viên theo thành viên đã chọn

login_view.php

<html>
    <head></head>
    <body>
    <form action="login/result" method="post">
        Type your username: <input type="text" name="username" />
        <input type="submit" value="Load from database" />
    </form>
    </body>
</html>

result_view.php

<h4>Details:</h4>
<p>
Id: <?=$member->id_membership?> <br />
Username: <?=$member->username?> <br />
Email: <?=$member->email?>
</p>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để lấy dữ liệu từ các bảng được liên kết khác nhau bằng cách sử dụng có thể chứa trong Cakephp?

  2. Tạo giá trị của một trường được mã hóa là duy nhất

  3. Cảnh báo:mysql_fetch_array ():đối số được cung cấp không phải là tài nguyên kết quả MySQL hợp lệ

  4. Cách tìm hiệu quả các vị trí gần nhất gần một vị trí nhất định

  5. Xuất cơ sở dữ liệu lớn sang tệp mà không có mysqldump, bộ nhớ thấp