我需要表格:
图库 - > id_gallery,name,desc,data
和
图片 - > gallery_id,名称
一个图库可以有很多图像。我需要选择所有画廊和所有图像,并在视图页面上显示所有画廊和包含该画廊的所有图像。怎么办呢?
我现在有这样的代码:
$this->db->select('*')->from('image')->join('gallery','id_gallery = gallery_id');
$q = $this->db->get();
return $q = $q->result_array();
编辑:
<?php foreach ($gallery as $gal): ?>
<figure>
<a href="<?php echo IMG ?>galerija/<?php echo $gal['name'] ?>/<?php echo $gal['path'] ?>" rel="galerija[slike]" class="figure_img">
<img src="<?php echo IMG ?>galerija/<?php echo $gal['naziv'] ?>/thumbs/<?php echo $gal['path'] ?>" >
<figcaption><?php echo $gal['name']; ?></figcaption>
</a>
</figure>
<?php endforeach; ?>
这个foreach循环产生5个div标签而不是一个(例如,如果图库有5个图像)。
答案 0 :(得分:3)
如果要为所有图库选择图像表中的所有图像..........
$this->db->select('*');
$this->db->from('images');
$this->db->join('gallery', 'gallery.id_gallery = images.gallery_id');
$query = $this->db->get();
return $q = $query->result_array();
或以其他方式。写一个模型函数,然后在那里
public function get_images()
{
$res=$this->db->query("select * from images and gallery where gallery.id_gallery = images.gallery_id");
if($res->num_rows()>0){
return $res->result("array");
}
return array();
}