считать посты одной категории в CodeIgniter - PullRequest
0 голосов
/ 28 сентября 2018

У меня проблемы с подсчетом сообщений в категории и их показом.Я хочу показывать категории в sidbar и подсчитывать их по сообщениям.

, например.

  • num = количество сообщений, имеющих медицинское значение, составляет 8
  • medical = 8

Моя таблица сообщений"электронные книги" Моя таблица категорий - "категории"

Моя модель:

    public function count_item(){
    $this->db->select('*');
    $this->db->from('categories');
    $this->db->join('ebooks', 'categories.cat_id = ebooks.cat_id');
    $this->db->where(array('ebooks.cat_id !=' => null, 'categories.cat_id != ' => NULL));
    $this->db->group_by(array('categories.cat_id', 'categories.name'));
    $query = $this->db->get();
    return $query->result_array();
}

Мой контролер:

  public function posts() {

    $data['posts'] = $this->post_model->get_posts();
    $data['categories'] = $this->categories_model->count_item();

    $this->load->view('inc/header');
    $this->load->view('posts/posts', $data);
    $this->load->view('inc/footer');

}

На мой взгляд:

 <div class="panel-body">
                    <?php foreach ($categories as $category): ?>
                    <ul class="list-group">
                        <li class="list-group-item"><a href="#"><?php 
                            echo $category['name']; 
                            ?><span class="badge" style="float: left">14</span></a></li>
                    </ul>
                    <?php endforeach; ?>
                    <div class="clearfix"></div>
                    <center><a href="" class="btn btn-primary">more details</a></center>
                </div>

Я хочу показать количество постов на основе одной категории здесь: {ЗДЕСЬ}

Заранее спасибо

1 Ответ

0 голосов
/ 28 сентября 2018

Вы можете попробовать это:

$this->db->select('categories.name as categories_name, COUNT(ebooks.cat_id) as categories_count');
$this->db->from('categories');
$this->db->join('ebooks', 'categories.cat_id = ebooks.cat_id');
$this->db->where(array('ebooks.cat_id !=' => null, 'categories.cat_id != ' => NULL));
$this->db->group_by('ebooks.cat_id');
$query = $this->db->get();
return $query->result_array();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...