php - 如何在不从 View 调用 Controller 的情况下在 codeigniter 中显示数据库中的内容?

标签 php mysql codeigniter

我是 codeigniter 的新手。我按照视频教程成功创建了一个登录注册系统。注册或登录后,用户会到达一个名为 members.php 的页面。

members.php 是一个 View 。

我的 Controller 是 main.php,模型是 model-users.php。

我希望 members.php 显示/拥有数据库中的内容,以便用户在登录或注册后可以阅读它?

我关注了网络上的一些资源,这些资源说不要从 View 中调用 Controller 。如果不这样做,我怎么能与上述行为同谋呢?

谢谢

最佳答案

我认为 CodeIgniter documentation实际上非常清楚,也很容易理解。不过,这里有一个示例,说明您可以如何构建您的应用。

Controller :

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Members extends CI_Controller {
    function __construct() {
        parent::__construct();

        $this->load->model('members_model');
    }

    function index() {
        $data['members'] = $this->members_model->get_members();

        $this->load->view('header', $data);
        $this->load->view('members');
        $this->load->view('footer');
    }
}

型号:

<?php if (!defined('BASEPATH')) exit('No direct script access allowed');

class Members_model extends CI_Model {

    function get_members() {
        $query = $this->db->get('members');
        return $query->result_array();
    }
}

查看:

<?php

print_r($members);

要访问以上页面,您将访问http://yoursite.com/index.php/members .

您可以使用 .htaccess 文件从 URI 中删除 index.php 段。 index() 方法会在您运行 Controller 时自动调用。

关于php - 如何在不从 View 调用 Controller 的情况下在 codeigniter 中显示数据库中的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14983038/

相关文章:

mysql - 计数: multiple queries or one query with multiple subqueries?

php - 如何使MySQL的值增加一,使用PHP

mysql - 如何在 SQL 中显示 NULL 记录

php - 如何在mysql中将字符串保存为十进制?

php - Codeigniter (CSRF) jQuery ajax 问题

javascript - echo "row 1"内容 每个不同位置的,"row 2"内容

mysql - 奇怪的 "all"在“哪里”

php - 使用 PHP 从网页获取数据

php - 在 mySQL select 语句中找到正确的计数语法

php - 如何在cakephp中获取表单输入的值