0

私はテーブルにいる必要があります:

ギャラリー-> id_gallery、名前、説明、データ

と:

画像-> gallery_id、名前

1 つのギャラリーに多くの画像を含めることができます。すべてのギャラリーとすべての画像を選択し、表示ページにすべてのギャラリーとそのギャラリーを含むすべての画像を表示する必要があります。どうすればこれを行うことができますか?

今のところ、次のようなコードがあります。

$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 ループは、1 つではなく 5 つの div タグを生成しています (たとえば、ギャラリーに 5 つの画像がある場合)。

4

1 に答える 1

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();

}
于 2012-11-27T15:21:32.967 に答える