【问题标题】:Codeigniter. get values from database in 3 table(many to many)代码点火器。从 3 个表中的数据库中获取值(多对多)
【发布时间】:2014-04-02 11:23:57
【问题描述】:

对不起我的英语:)

我是 Codeigniter 的新手,从写简单的博客开始我的学习 我有 3 张桌子

Table 1 'news'
---------------------------------
id | title | slug | text | image |
---------------------------------
Table 2 'categories'
----------
id | name |
----------
Table 3 'news_cat'
---------------------------
id | news_id | category_id |
---------------------------
in this table `id` is autoincrement

我想在我的视图页面中查看来自“新闻”的一篇文章的类别

查看文件

<?php foreach ($news as $news_item): ?>

   <?php echo $news_item['title'] ?>

   <p><?=$news_item['text'] ?>
<? foreach($news_item['cat_data'] as $cat_data):?>
The category is:<?=$cat_data ?>

<?php endforeach;?>

<?php if(!empty($news_item['image'])) { ?>
<img  src ="/uploads/<?=$news_item['image'];?>">
<?php } ?>

<a href="news/<?=$news_item['slug'] ?>">View article</a>

Controller

public function index()
{

$data['news'] = $this->news_model->get_news();

foreach ($data['news'] as $key => $value) :
    $id = $data['news'][$key]['id'];
 $data['news'][$key]['cat_data'] = $this->categories_model->get_by_id($id);
    // IN THIS I HAVE QUESTION, how insert in my array several values by method           get_by_id() and what must have this method

$data['title'] = 'News archive';
$this->load->view('templates/header', $data);
$this->load->view('news/index', $data);
$this->load->view('templates/footer');

}

型号 公共函数 get_by_id($id) {

  in this model i think i need use JOIN, but how i don`t know

}

【问题讨论】:

  • 在这个表中,id是多余的

标签: php mysql codeigniter left-join


【解决方案1】:

希望下面的代码示例可以帮助您..如果我理解您的问题,这将为您提供类别名称和 id 值的列表

$this->db->select('categories.name,categories.id');
$this->db->from('categories');
$this->db->join('news_cat',"news_cat.category_id= categories.id");
$query = $this->db->get();
$data['category_list']=$query->result_array();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-23
    • 1970-01-01
    • 2018-10-03
    • 1970-01-01
    • 2016-11-13
    相关资源
    最近更新 更多