代码之家  ›  专栏  ›  技术社区  ›  Ahmad Tahhan

编码器点火器和引导滑块,如何循环和加载幻灯片

  •  0
  • Ahmad Tahhan  · 技术社区  · 8 年前

    我正在尝试用codeigniter制作一个引导滑盖,滑盖图像应该从数据库中提取。

    每个帖子都有一个唯一的滑块,所以我有两个数据库表,一个用于帖子,另一个用于幻灯片。

    问题是,我无法在幻灯片表中循环以拉出分配给帖子的幻灯片。

    我在posts和slides表之间做了一个连接表,这样就可以得到相关联的幻灯片,但结果是只加载一张幻灯片。

    模型:

    public function get_yachts($slug = FALSE){
          if ($slug === FALSE) {
            $query = $this->db->get('yachts');
            return $query->result_array();
          }
          $this->db->join('yacht_slider', 'yacht_slider.yacht_slide_id = yachts.id');
          $query = $this->db->get_where('yachts', array('slug' => $slug));
          return $query->row_array();
        }
    

    控制器:

    public function view($slug = NULL){
          $data['yacht'] = $this->yacht_model->get_yachts($slug);
          $data['title'] = 'Yachts';
          $this->load->view('templates/header', $data);
          $this->load->view('yachts/view', $data);
          $this->load->view('templates/footer');
        }
      }
    

    在我的html代码中,当我试图加载这样的幻灯片时 <?php echo $yacht['slide'];?> 我只从幻灯片表中得到一行,所以如何循环得到其余的幻灯片。我尝试了foreach循环和其他方法,但都没有成功。

    1 回复  |  直到 8 年前
        1
  •  1
  •   Pradeep    8 年前

    希望这对你有帮助:

    你的模特 get_yachts 应该是这样的:

    public function get_yachts($slug = FALSE)
    {
      if ($slug === FALSE) 
      {
        $query = $this->db->get('yachts');
        return $query->result_array();
      }
      else
      {
        /*$this->db->select('yachts.title as ytitle');*/
    
        $this->db->join('yacht_slider', 'yacht_slider.yacht_slide_id = yachts.id');
        $query = $this->db->get_where('yachts', array('slug' => $slug));
        return $query->result_array();
      }    
    }
    

    控制器将保持不变。

    视图访问 $yacht 这样地:

    <?php
    if (! empty($yacht))
    {
        foreach ($yacht as $key => $item) {
            echo $item['slide'];
        }
    }
    ?>
    
    推荐文章